{
  "metadata": {
    "purpose": "v3_htf_pdarray_reviews",
    "generated_at": "2026-07-18T06:23:32Z",
    "review_count": 2301,
    "breakdown": {
      "shadow": 1447,
      "confirmed": 805,
      "needs_more_context": 39,
      "rejected": 10
    },
    "isFinalBacktest": false
  },
  "reviews": [
    {
      "candidate_id": "candidate_v3_2026-01-02T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4377.907, planned_rr=3.0, touch=2026-01-02T06:35:00Z, outcome=sl_first",
      "entry": 4377.907,
      "stop": 4380.105,
      "target": 4371.312,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T06:35:00Z",
      "outcome_time": "2026-01-02T07:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4374.32,
          "impulse_high": 4380.105,
          "fib_entry_level": "62%",
          "entry": 4377.9067,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4386.734, planned_rr=3.0, touch=2026-01-02T09:00:00Z, outcome=sl_first",
      "entry": 4386.734,
      "stop": 4384.27,
      "target": 4394.127,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T09:00:00Z",
      "outcome_time": "2026-01-02T09:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4384.27,
          "impulse_high": 4390.755,
          "fib_entry_level": "62%",
          "entry": 4386.7343,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4385.815,
              "high": 4386.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4390.765, planned_rr=2.0, touch=2026-01-02T10:35:00Z, outcome=sl_first",
      "entry": 4390.765,
      "stop": 4384.745,
      "target": 4402.805,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T10:35:00Z",
      "outcome_time": "2026-01-02T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4384.745,
          "impulse_high": 4396.785,
          "fib_entry_level": "50%",
          "entry": 4390.764999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4390.04,
              "high": 4393.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4389.32, planned_rr=3.0, touch=2026-01-02T10:35:00Z, outcome=sl_first",
      "entry": 4389.32,
      "stop": 4384.745,
      "target": 4403.046,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T10:35:00Z",
      "outcome_time": "2026-01-02T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4384.745,
          "impulse_high": 4396.785,
          "fib_entry_level": "62%",
          "entry": 4389.3202,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4385.755,
              "high": 4390.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4390.012, planned_rr=2.0, touch=2026-01-02T12:40:00Z, outcome=sl_first",
      "entry": 4390.012,
      "stop": 4394.775,
      "target": 4380.488,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T12:40:00Z",
      "outcome_time": "2026-01-02T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4385.25,
          "impulse_high": 4394.775,
          "fib_entry_level": "50%",
          "entry": 4390.0125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4377.625,
              "high": 4392.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4391.155, planned_rr=3.0, touch=2026-01-02T12:40:00Z, outcome=sl_first",
      "entry": 4391.155,
      "stop": 4394.775,
      "target": 4380.297,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T12:40:00Z",
      "outcome_time": "2026-01-02T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4385.25,
          "impulse_high": 4394.775,
          "fib_entry_level": "62%",
          "entry": 4391.1555,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4377.625,
              "high": 4392.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4390.2, planned_rr=2.0, touch=2026-01-02T12:50:00Z, outcome=tp_first",
      "entry": 4390.2,
      "stop": 4385.54,
      "target": 4399.52,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T12:50:00Z",
      "outcome_time": "2026-01-02T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4385.54,
          "impulse_high": 4394.86,
          "fib_entry_level": "50%",
          "entry": 4390.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4390.04,
              "high": 4393.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4389.082, planned_rr=3.0, touch=2026-01-02T12:50:00Z, outcome=tp_first",
      "entry": 4389.082,
      "stop": 4385.54,
      "target": 4399.706,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-02T12:50:00Z",
      "outcome_time": "2026-01-02T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4385.54,
          "impulse_high": 4394.86,
          "fib_entry_level": "62%",
          "entry": 4389.0815999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4385.755,
              "high": 4390.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4395.988, planned_rr=3.0, touch=2026-01-02T13:05:00Z, outcome=sl_first",
      "entry": 4395.988,
      "stop": 4392.72,
      "target": 4405.792,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T13:05:00Z",
      "outcome_time": "2026-01-02T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4392.72,
          "impulse_high": 4401.32,
          "fib_entry_level": "62%",
          "entry": 4395.988,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-00-00Z_short_breaker_continuation",
      "timestamp": "2026-01-02T13:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4385.173, planned_rr=2.0, touch=2026-01-02T13:20:00Z, outcome=tp_first",
      "entry": 4385.173,
      "stop": 4401.32,
      "target": 4352.878,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T13:20:00Z",
      "outcome_time": "2026-01-02T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-00-00Z_short_breaker_continuation",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4401.32,
          "entry": 4385.172500000001,
          "stop": 4401.32,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4377.625,
              "high": 4392.72,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4392.72,
              "high": 4401.32,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-15-00Z_short_breaker_continuation",
      "timestamp": "2026-01-02T13:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4385.173, planned_rr=2.0, touch=2026-01-02T13:20:00Z, outcome=tp_first",
      "entry": 4385.173,
      "stop": 4402.295,
      "target": 4350.928,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T13:20:00Z",
      "outcome_time": "2026-01-02T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-15-00Z_short_breaker_continuation",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4402.295,
          "entry": 4385.172500000001,
          "stop": 4402.295,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4377.625,
              "high": 4392.72,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4392.72,
              "high": 4401.32,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-01-02T13:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4385.173, planned_rr=2.0, touch=2026-01-02T13:20:00Z, outcome=tp_first",
      "entry": 4385.173,
      "stop": 4402.295,
      "target": 4350.928,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T13:20:00Z",
      "outcome_time": "2026-01-02T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4402.295,
          "entry": 4385.172500000001,
          "stop": 4402.295,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4377.625,
              "high": 4392.72,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4392.72,
              "high": 4401.32,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-02T13:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4374.605, planned_rr=2.0, touch=2026-01-02T13:25:00Z, outcome=tp_first",
      "entry": 4374.605,
      "stop": 4402.295,
      "target": 4319.225,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T13:25:00Z",
      "outcome_time": "2026-01-02T16:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4402.295,
          "entry": 4374.605,
          "stop": 4402.295,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4371.893, planned_rr=3.0, touch=2026-01-02T13:50:00Z, outcome=tp_first",
      "entry": 4371.893,
      "stop": 4377.855,
      "target": 4354.006,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-02T13:50:00Z",
      "outcome_time": "2026-01-02T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4362.165,
          "impulse_high": 4377.855,
          "fib_entry_level": "62%",
          "entry": 4371.8928,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4362.058, planned_rr=3.0, touch=2026-01-02T14:45:00Z, outcome=tp_first",
      "entry": 4362.058,
      "stop": 4370.61,
      "target": 4336.402,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-02T14:45:00Z",
      "outcome_time": "2026-01-02T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4348.105,
          "impulse_high": 4370.61,
          "fib_entry_level": "62%",
          "entry": 4362.058099999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4345.7, planned_rr=2.0, touch=2026-01-02T15:05:00Z, outcome=tp_first",
      "entry": 4345.7,
      "stop": 4357.455,
      "target": 4322.19,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T15:05:00Z",
      "outcome_time": "2026-01-02T16:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4333.945,
          "impulse_high": 4357.455,
          "fib_entry_level": "50%",
          "entry": 4345.7,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4342.98,
              "high": 4352.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4337.495, planned_rr=3.0, touch=2026-01-02T15:55:00Z, outcome=sl_first",
      "entry": 4337.495,
      "stop": 4331.7,
      "target": 4354.88,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-02T15:55:00Z",
      "outcome_time": "2026-01-02T16:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4331.7,
          "impulse_high": 4346.95,
          "fib_entry_level": "62%",
          "entry": 4337.495,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4329.005, planned_rr=2.0, touch=2026-01-02T16:05:00Z, outcome=tp_first",
      "entry": 4329.005,
      "stop": 4337.535,
      "target": 4311.945,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-02T16:05:00Z",
      "outcome_time": "2026-01-02T18:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4320.475,
          "impulse_high": 4337.535,
          "fib_entry_level": "50%",
          "entry": 4329.005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4325.295,
              "high": 4333.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-02T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-02T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4331.052, planned_rr=3.0, touch=2026-01-02T17:00:00Z, outcome=tp_first",
      "entry": 4331.052,
      "stop": 4337.535,
      "target": 4311.604,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-02T17:00:00Z",
      "outcome_time": "2026-01-02T18:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-02T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-02",
        "timestamp": "2026-01-02T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4320.475,
          "impulse_high": 4337.535,
          "fib_entry_level": "62%",
          "entry": 4331.0522,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4325.295,
              "high": 4333.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-04T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-04T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4360.15, planned_rr=2.0, touch=2026-01-04T23:05:00Z, outcome=sl_first",
      "entry": 4360.15,
      "stop": 4349.355,
      "target": 4381.74,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-04T23:05:00Z",
      "outcome_time": "2026-01-04T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-04T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-04",
        "timestamp": "2026-01-04T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4349.355,
          "impulse_high": 4370.945,
          "fib_entry_level": "50%",
          "entry": 4360.15,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4333.725,
              "high": 4361.31,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4354.51,
              "high": 4367.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-04T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-04T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4357.559, planned_rr=3.0, touch=2026-01-04T23:05:00Z, outcome=sl_first",
      "entry": 4357.559,
      "stop": 4349.355,
      "target": 4382.172,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-04T23:05:00Z",
      "outcome_time": "2026-01-04T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-04T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-04",
        "timestamp": "2026-01-04T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4349.355,
          "impulse_high": 4370.945,
          "fib_entry_level": "62%",
          "entry": 4357.5592,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4333.725,
              "high": 4361.31,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4354.51,
              "high": 4367.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4402.295,
            "PDL": 4309.915,
            "PWH": null,
            "PWL": null
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4389.248, planned_rr=3.0, touch=2026-01-05T02:05:00Z, outcome=tp_first",
      "entry": 4389.248,
      "stop": 4384.905,
      "target": 4402.279,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-05T02:05:00Z",
      "outcome_time": "2026-01-05T02:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4384.905,
          "impulse_high": 4396.335,
          "fib_entry_level": "62%",
          "entry": 4389.2483999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4404.877, planned_rr=3.0, touch=2026-01-05T01:10:00Z, outcome=sl_first",
      "entry": 4404.877,
      "stop": 4394.625,
      "target": 4435.635,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-05T01:10:00Z",
      "outcome_time": "2026-01-05T01:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4394.625,
          "impulse_high": 4421.605,
          "fib_entry_level": "62%",
          "entry": 4404.877399999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4397.674, planned_rr=3.0, touch=2026-01-05T01:35:00Z, outcome=sl_first",
      "entry": 4397.674,
      "stop": 4392.97,
      "target": 4411.788,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-05T01:35:00Z",
      "outcome_time": "2026-01-05T01:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4392.97,
          "impulse_high": 4405.35,
          "fib_entry_level": "62%",
          "entry": 4397.6744,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4418.75, planned_rr=3.0, touch=2026-01-05T11:35:00Z, outcome=sl_first",
      "entry": 4418.75,
      "stop": 4415.17,
      "target": 4429.488,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-05T11:35:00Z",
      "outcome_time": "2026-01-05T12:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4415.17,
          "impulse_high": 4424.59,
          "fib_entry_level": "62%",
          "entry": 4418.7496,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T13-15-00Z_long_breaker_continuation",
      "timestamp": "2026-01-05T13:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4418.873, planned_rr=2.0, touch=2026-01-05T14:00:00Z, outcome=tp_first",
      "entry": 4418.873,
      "stop": 4397.09,
      "target": 4462.438,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-05T14:00:00Z",
      "outcome_time": "2026-01-06T03:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T13-15-00Z_long_breaker_continuation",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4397.09,
          "entry": 4418.8725,
          "stop": 4397.09,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4417.31,
              "high": 4420.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-01-05T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4418.873, planned_rr=2.0, touch=2026-01-05T14:00:00Z, outcome=tp_first",
      "entry": 4418.873,
      "stop": 4396.485,
      "target": 4463.648,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-05T14:00:00Z",
      "outcome_time": "2026-01-06T03:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T13-30-00Z_long_breaker_continuation",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4396.485,
          "entry": 4418.8725,
          "stop": 4396.485,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4417.31,
              "high": 4420.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T13-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-05T13:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4418.873, planned_rr=2.0, touch=2026-01-05T14:00:00Z, outcome=tp_first",
      "entry": 4418.873,
      "stop": 4396.485,
      "target": 4463.648,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-05T14:00:00Z",
      "outcome_time": "2026-01-06T03:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T13-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4396.485,
          "entry": 4418.8725,
          "stop": 4396.485,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4417.31,
              "high": 4420.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-05T13:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4412.155, planned_rr=2.0, touch=2026-01-05T13:35:00Z, outcome=tp_first",
      "entry": 4412.155,
      "stop": 4396.485,
      "target": 4443.495,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-05T13:35:00Z",
      "outcome_time": "2026-01-05T15:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T13-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4396.485,
          "entry": 4412.155,
          "stop": 4396.485,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4421.422, planned_rr=3.0, touch=2026-01-05T14:05:00Z, outcome=tp_first",
      "entry": 4421.422,
      "stop": 4417.025,
      "target": 4434.611,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-05T14:05:00Z",
      "outcome_time": "2026-01-05T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4417.025,
          "impulse_high": 4428.595,
          "fib_entry_level": "62%",
          "entry": 4421.4216,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4443.99, planned_rr=3.0, touch=2026-01-05T15:10:00Z, outcome=sl_first",
      "entry": 4443.99,
      "stop": 4436.77,
      "target": 4465.65,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-05T15:10:00Z",
      "outcome_time": "2026-01-05T15:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4436.77,
          "impulse_high": 4455.77,
          "fib_entry_level": "62%",
          "entry": 4443.990000000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-05T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-05T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4441.198, planned_rr=3.0, touch=2026-01-05T20:50:00Z, outcome=tp_first",
      "entry": 4441.198,
      "stop": 4438.295,
      "target": 4449.908,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-05T20:50:00Z",
      "outcome_time": "2026-01-05T23:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-05T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-05",
        "timestamp": "2026-01-05T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4438.295,
          "impulse_high": 4445.935,
          "fib_entry_level": "62%",
          "entry": 4441.1982,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4455.77,
            "PDL": 4349.355,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4433.335, planned_rr=3.0, touch=2026-01-06T01:05:00Z, outcome=tp_first",
      "entry": 4433.335,
      "stop": 4427.635,
      "target": 4450.435,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-06T01:05:00Z",
      "outcome_time": "2026-01-06T01:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4427.635,
          "impulse_high": 4442.635,
          "fib_entry_level": "62%",
          "entry": 4433.335,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T01-00-00Z_long_breaker_continuation",
      "timestamp": "2026-01-06T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4446.167, planned_rr=2.0, touch=2026-01-06T01:50:00Z, outcome=tp_first",
      "entry": 4446.167,
      "stop": 4427.635,
      "target": 4483.232,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T01:50:00Z",
      "outcome_time": "2026-01-06T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T01-00-00Z_long_breaker_continuation",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4427.635,
          "entry": 4446.1675,
          "stop": 4427.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4443.615,
              "high": 4448.72,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4452.595,
              "high": 4456.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T01-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-06T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4446.167, planned_rr=2.0, touch=2026-01-06T01:50:00Z, outcome=tp_first",
      "entry": 4446.167,
      "stop": 4427.635,
      "target": 4483.232,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T01:50:00Z",
      "outcome_time": "2026-01-06T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T01-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4427.635,
          "entry": 4446.1675,
          "stop": 4427.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4443.615,
              "high": 4448.72,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4452.595,
              "high": 4456.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-06T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4442.025, planned_rr=2.0, touch=2026-01-06T01:10:00Z, outcome=tp_first",
      "entry": 4442.025,
      "stop": 4427.635,
      "target": 4470.805,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T01:10:00Z",
      "outcome_time": "2026-01-06T05:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T01-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4427.635,
          "entry": 4442.025,
          "stop": 4427.635,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4454.622, planned_rr=2.0, touch=2026-01-06T02:05:00Z, outcome=tp_first",
      "entry": 4454.622,
      "stop": 4448.72,
      "target": 4466.427,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T02:05:00Z",
      "outcome_time": "2026-01-06T03:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4448.72,
          "impulse_high": 4460.525,
          "fib_entry_level": "50%",
          "entry": 4454.6224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4452.595,
              "high": 4456.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4453.206, planned_rr=3.0, touch=2026-01-06T02:05:00Z, outcome=tp_first",
      "entry": 4453.206,
      "stop": 4448.72,
      "target": 4466.664,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-06T02:05:00Z",
      "outcome_time": "2026-01-06T03:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4448.72,
          "impulse_high": 4460.525,
          "fib_entry_level": "62%",
          "entry": 4453.2059,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4452.595,
              "high": 4456.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4460.113, planned_rr=2.0, touch=2026-01-06T03:10:00Z, outcome=tp_first",
      "entry": 4460.113,
      "stop": 4454.385,
      "target": 4471.568,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T03:10:00Z",
      "outcome_time": "2026-01-06T05:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4454.385,
          "impulse_high": 4465.84,
          "fib_entry_level": "50%",
          "entry": 4460.1125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4457.835,
              "high": 4461.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4458.738, planned_rr=3.0, touch=2026-01-06T03:05:00Z, outcome=tp_first",
      "entry": 4458.738,
      "stop": 4454.385,
      "target": 4471.797,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-06T03:05:00Z",
      "outcome_time": "2026-01-06T05:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4454.385,
          "impulse_high": 4465.84,
          "fib_entry_level": "62%",
          "entry": 4458.7379,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4457.835,
              "high": 4461.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4468.88, planned_rr=2.0, touch=2026-01-06T08:20:00Z, outcome=sl_first",
      "entry": 4468.88,
      "stop": 4461.97,
      "target": 4482.7,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-06T08:20:00Z",
      "outcome_time": "2026-01-06T09:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4461.97,
          "impulse_high": 4475.79,
          "fib_entry_level": "50%",
          "entry": 4468.88,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4467.09,
              "high": 4469.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4467.222, planned_rr=3.0, touch=2026-01-06T08:20:00Z, outcome=sl_first",
      "entry": 4467.222,
      "stop": 4461.97,
      "target": 4482.976,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-06T08:20:00Z",
      "outcome_time": "2026-01-06T09:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4461.97,
          "impulse_high": 4475.79,
          "fib_entry_level": "62%",
          "entry": 4467.2216,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4467.09,
              "high": 4469.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4458.75, planned_rr=2.0, touch=2026-01-06T11:40:00Z, outcome=tp_first",
      "entry": 4458.75,
      "stop": 4455.015,
      "target": 4466.22,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T11:40:00Z",
      "outcome_time": "2026-01-06T12:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4455.015,
          "impulse_high": 4462.485,
          "fib_entry_level": "50%",
          "entry": 4458.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4455.895,
              "high": 4459.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4457.854, planned_rr=3.0, touch=2026-01-06T11:40:00Z, outcome=tp_first",
      "entry": 4457.854,
      "stop": 4455.015,
      "target": 4466.369,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-06T11:40:00Z",
      "outcome_time": "2026-01-06T12:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4455.015,
          "impulse_high": 4462.485,
          "fib_entry_level": "62%",
          "entry": 4457.8536,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4455.895,
              "high": 4459.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T13-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-06T13:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "ICT Sweep + MSS + FVG Long entry=4454.132, planned_rr=2.0, touch=2026-01-06T13:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4454.132,
      "stop": 4453.965,
      "target": 4454.467,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-06T13:50:00Z",
      "outcome_time": "2026-01-06T13:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T13-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4453.965,
          "entry": 4454.1325,
          "stop": 4453.965,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4453.25,
              "high": 4455.015,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4455.895,
              "high": 4459.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T13-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-06T13:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4468.09, planned_rr=2.0, touch=2026-01-06T13:55:00Z, outcome=tp_first",
      "entry": 4468.09,
      "stop": 4453.965,
      "target": 4496.34,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-06T13:55:00Z",
      "outcome_time": "2026-01-06T20:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T13-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4453.965,
          "entry": 4468.09,
          "stop": 4453.965,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4474.2, planned_rr=2.0, touch=2026-01-06T15:20:00Z, outcome=sl_first",
      "entry": 4474.2,
      "stop": 4465.195,
      "target": 4492.21,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-06T15:20:00Z",
      "outcome_time": "2026-01-06T15:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4465.195,
          "impulse_high": 4483.205,
          "fib_entry_level": "50%",
          "entry": 4474.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4473.355,
              "high": 4479.5,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4472.039, planned_rr=3.0, touch=2026-01-06T15:30:00Z, outcome=sl_first",
      "entry": 4472.039,
      "stop": 4465.195,
      "target": 4492.57,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-06T15:30:00Z",
      "outcome_time": "2026-01-06T15:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4465.195,
          "impulse_high": 4483.205,
          "fib_entry_level": "62%",
          "entry": 4472.038799999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4464.405,
              "high": 4473.355,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-06T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-06T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4483.406, planned_rr=3.0, touch=2026-01-06T14:50:00Z, outcome=sl_first",
      "entry": 4483.406,
      "stop": 4479.5,
      "target": 4495.126,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-06T14:50:00Z",
      "outcome_time": "2026-01-06T15:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-06T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-06",
        "timestamp": "2026-01-06T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4479.5,
          "impulse_high": 4489.78,
          "fib_entry_level": "62%",
          "entry": 4483.4064,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4497.31,
            "PDL": 4427.635,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4473.957, planned_rr=3.0, touch=2026-01-07T01:20:00Z, outcome=sl_first",
      "entry": 4473.957,
      "stop": 4470.795,
      "target": 4483.441,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T01:20:00Z",
      "outcome_time": "2026-01-07T01:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4470.795,
          "impulse_high": 4479.115,
          "fib_entry_level": "62%",
          "entry": 4473.9565999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4465.754, planned_rr=3.0, touch=2026-01-07T04:30:00Z, outcome=sl_first",
      "entry": 4465.754,
      "stop": 4459.71,
      "target": 4483.886,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T04:30:00Z",
      "outcome_time": "2026-01-07T05:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4459.71,
          "impulse_high": 4475.615,
          "fib_entry_level": "62%",
          "entry": 4465.7539,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T02-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-07T02:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4472.435, planned_rr=2.0, touch=2026-01-07T02:10:00Z, outcome=sl_first",
      "entry": 4472.435,
      "stop": 4459.71,
      "target": 4497.885,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T02:10:00Z",
      "outcome_time": "2026-01-07T05:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T02-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4459.71,
          "entry": 4472.435,
          "stop": 4459.71,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4462.212, planned_rr=3.0, touch=2026-01-07T11:00:00Z, outcome=sl_first",
      "entry": 4462.212,
      "stop": 4459.085,
      "target": 4471.595,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T11:00:00Z",
      "outcome_time": "2026-01-07T11:25:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4459.085,
          "impulse_high": 4467.315,
          "fib_entry_level": "62%",
          "entry": 4462.212399999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4436.532, planned_rr=3.0, touch=2026-01-07T13:20:00Z, outcome=sl_first",
      "entry": 4436.532,
      "stop": 4429.91,
      "target": 4456.396,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T13:20:00Z",
      "outcome_time": "2026-01-07T15:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4429.91,
          "impulse_high": 4447.335,
          "fib_entry_level": "62%",
          "entry": 4436.5315,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4447.886, planned_rr=3.0, touch=2026-01-07T13:50:00Z, outcome=sl_first",
      "entry": 4447.886,
      "stop": 4444.605,
      "target": 4457.73,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T13:50:00Z",
      "outcome_time": "2026-01-07T14:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4444.605,
          "impulse_high": 4453.24,
          "fib_entry_level": "62%",
          "entry": 4447.886299999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T15-00-00Z_long_breaker_continuation",
      "timestamp": "2026-01-07T15:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4453.725, planned_rr=2.0, touch=2026-01-07T16:20:00Z, outcome=sl_first",
      "entry": 4453.725,
      "stop": 4426.61,
      "target": 4507.955,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:20:00Z",
      "outcome_time": "2026-01-08T05:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T15-00-00Z_long_breaker_continuation",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4426.61,
          "entry": 4453.725,
          "stop": 4426.61,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4450.645,
              "high": 4456.805,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4461.27,
              "high": 4461.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T15-15-00Z_long_breaker_continuation",
      "timestamp": "2026-01-07T15:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4453.725, planned_rr=2.0, touch=2026-01-07T16:20:00Z, outcome=sl_first",
      "entry": 4453.725,
      "stop": 4423.385,
      "target": 4514.405,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:20:00Z",
      "outcome_time": "2026-01-08T05:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T15-15-00Z_long_breaker_continuation",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4423.385,
          "entry": 4453.725,
          "stop": 4423.385,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4450.645,
              "high": 4456.805,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4461.27,
              "high": 4461.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T15-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-07T15:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4453.725, planned_rr=2.0, touch=2026-01-07T16:20:00Z, outcome=sl_first",
      "entry": 4453.725,
      "stop": 4423.385,
      "target": 4514.405,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:20:00Z",
      "outcome_time": "2026-01-08T05:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T15-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4423.385,
          "entry": 4453.725,
          "stop": 4423.385,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4450.645,
              "high": 4456.805,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4461.27,
              "high": 4461.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T15-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-07T15:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4442.365, planned_rr=2.0, touch=2026-01-07T15:25:00Z, outcome=sl_first",
      "entry": 4442.365,
      "stop": 4423.385,
      "target": 4480.325,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T15:25:00Z",
      "outcome_time": "2026-01-08T05:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T15-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4423.385,
          "entry": 4442.365,
          "stop": 4423.385,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4452.93, planned_rr=2.0, touch=2026-01-07T16:20:00Z, outcome=sl_first",
      "entry": 4452.93,
      "stop": 4444.59,
      "target": 4469.61,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:20:00Z",
      "outcome_time": "2026-01-08T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4444.59,
          "impulse_high": 4461.27,
          "fib_entry_level": "50%",
          "entry": 4452.93,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4450.645,
              "high": 4456.805,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4450.928, planned_rr=3.0, touch=2026-01-07T16:20:00Z, outcome=sl_first",
      "entry": 4450.928,
      "stop": 4444.59,
      "target": 4469.944,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:20:00Z",
      "outcome_time": "2026-01-08T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4444.59,
          "impulse_high": 4461.27,
          "fib_entry_level": "62%",
          "entry": 4450.928400000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4450.645,
              "high": 4456.805,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-07T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-07T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4461.146, planned_rr=3.0, touch=2026-01-07T16:35:00Z, outcome=sl_first",
      "entry": 4461.146,
      "stop": 4456.805,
      "target": 4474.171,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-07T16:35:00Z",
      "outcome_time": "2026-01-07T17:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-07T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-07",
        "timestamp": "2026-01-07T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4456.805,
          "impulse_high": 4468.23,
          "fib_entry_level": "62%",
          "entry": 4461.1465,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4500.56,
            "PDL": 4423.385,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4450.376, planned_rr=3.0, touch=2026-01-08T01:40:00Z, outcome=sl_first",
      "entry": 4450.376,
      "stop": 4444.22,
      "target": 4468.844,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T01:40:00Z",
      "outcome_time": "2026-01-08T01:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4444.22,
          "impulse_high": 4460.42,
          "fib_entry_level": "62%",
          "entry": 4450.376,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T01-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-08T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4456.568, planned_rr=2.0, touch=2026-01-08T01:05:00Z, outcome=sl_first",
      "entry": 4456.568,
      "stop": 4444.22,
      "target": 4481.262,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T01:05:00Z",
      "outcome_time": "2026-01-08T01:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T01-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4444.22,
          "entry": 4456.5675,
          "stop": 4444.22,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4454.615,
              "high": 4458.52,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4452.515,
              "high": 4454.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-08T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4457.375, planned_rr=2.0, touch=2026-01-08T01:05:00Z, outcome=sl_first",
      "entry": 4457.375,
      "stop": 4444.22,
      "target": 4483.685,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T01:05:00Z",
      "outcome_time": "2026-01-08T01:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T01-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4444.22,
          "entry": 4457.375,
          "stop": 4444.22,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4420.56, planned_rr=3.0, touch=2026-01-08T05:50:00Z, outcome=sl_first",
      "entry": 4420.56,
      "stop": 4415.935,
      "target": 4434.433,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T05:50:00Z",
      "outcome_time": "2026-01-08T06:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4415.935,
          "impulse_high": 4428.105,
          "fib_entry_level": "62%",
          "entry": 4420.5596000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4422.351, planned_rr=3.0, touch=2026-01-08T06:20:00Z, outcome=tp_first",
      "entry": 4422.351,
      "stop": 4418.595,
      "target": 4433.62,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-08T06:20:00Z",
      "outcome_time": "2026-01-08T06:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4418.595,
          "impulse_high": 4428.48,
          "fib_entry_level": "62%",
          "entry": 4422.3513,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4430.681, planned_rr=3.0, touch=2026-01-08T06:45:00Z, outcome=sl_first",
      "entry": 4430.681,
      "stop": 4426.305,
      "target": 4443.808,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T06:45:00Z",
      "outcome_time": "2026-01-08T08:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4426.305,
          "impulse_high": 4437.82,
          "fib_entry_level": "62%",
          "entry": 4430.6807,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4425.651, planned_rr=3.0, touch=2026-01-08T08:50:00Z, outcome=sl_first",
      "entry": 4425.651,
      "stop": 4421.08,
      "target": 4439.366,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T08:50:00Z",
      "outcome_time": "2026-01-08T12:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4421.08,
          "impulse_high": 4433.11,
          "fib_entry_level": "62%",
          "entry": 4425.6514,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4429.425, planned_rr=2.0, touch=2026-01-08T11:05:00Z, outcome=sl_first",
      "entry": 4429.425,
      "stop": 4423.815,
      "target": 4440.645,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T11:05:00Z",
      "outcome_time": "2026-01-08T11:45:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4423.815,
          "impulse_high": 4435.035,
          "fib_entry_level": "50%",
          "entry": 4429.424999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4428.73,
              "high": 4430.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4428.079, planned_rr=3.0, touch=2026-01-08T11:10:00Z, outcome=sl_first",
      "entry": 4428.079,
      "stop": 4423.815,
      "target": 4440.869,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T11:10:00Z",
      "outcome_time": "2026-01-08T11:45:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4423.815,
          "impulse_high": 4435.035,
          "fib_entry_level": "62%",
          "entry": 4428.0786,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T12-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-08T12:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4424.405, planned_rr=2.0, touch=2026-01-08T12:30:00Z, outcome=tp_first",
      "entry": 4424.405,
      "stop": 4407.835,
      "target": 4457.545,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-08T12:30:00Z",
      "outcome_time": "2026-01-08T16:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T12-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4407.835,
          "entry": 4424.405,
          "stop": 4407.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4422.525,
              "high": 4426.285,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4417.405,
              "high": 4429.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T12-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-08T12:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4420.685, planned_rr=2.0, touch=2026-01-08T12:25:00Z, outcome=tp_first",
      "entry": 4420.685,
      "stop": 4407.835,
      "target": 4446.385,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-08T12:25:00Z",
      "outcome_time": "2026-01-08T15:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T12-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4407.835,
          "entry": 4420.685,
          "stop": 4407.835,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4425.865, planned_rr=2.0, touch=2026-01-08T12:35:00Z, outcome=sl_first",
      "entry": 4425.865,
      "stop": 4420.29,
      "target": 4437.015,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T12:35:00Z",
      "outcome_time": "2026-01-08T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4420.29,
          "impulse_high": 4431.44,
          "fib_entry_level": "50%",
          "entry": 4425.865,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4422.525,
              "high": 4426.285,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4417.405,
              "high": 4429.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4424.527, planned_rr=3.0, touch=2026-01-08T12:35:00Z, outcome=sl_first",
      "entry": 4424.527,
      "stop": 4420.29,
      "target": 4437.238,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T12:35:00Z",
      "outcome_time": "2026-01-08T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4420.29,
          "impulse_high": 4431.44,
          "fib_entry_level": "62%",
          "entry": 4424.527,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4422.525,
              "high": 4426.285,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4417.405,
              "high": 4429.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4428.36, planned_rr=2.0, touch=2026-01-08T13:20:00Z, outcome=sl_first",
      "entry": 4428.36,
      "stop": 4420.515,
      "target": 4444.05,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T13:20:00Z",
      "outcome_time": "2026-01-08T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4420.515,
          "impulse_high": 4436.205,
          "fib_entry_level": "50%",
          "entry": 4428.360000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4417.405,
              "high": 4429.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-08T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4426.477, planned_rr=3.0, touch=2026-01-08T13:20:00Z, outcome=sl_first",
      "entry": 4426.477,
      "stop": 4420.515,
      "target": 4444.364,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-08T13:20:00Z",
      "outcome_time": "2026-01-08T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-08",
        "timestamp": "2026-01-08T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4420.515,
          "impulse_high": 4436.205,
          "fib_entry_level": "62%",
          "entry": 4426.4772,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4417.405,
              "high": 4429.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4479.71,
            "PDL": 4407.835,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4466.31, planned_rr=2.0, touch=2026-01-09T01:50:00Z, outcome=sl_first",
      "entry": 4466.31,
      "stop": 4462.555,
      "target": 4473.82,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T01:50:00Z",
      "outcome_time": "2026-01-09T01:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4462.555,
          "impulse_high": 4470.065,
          "fib_entry_level": "50%",
          "entry": 4466.3099999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4463.61,
              "high": 4468.95,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4465.409, planned_rr=3.0, touch=2026-01-09T01:50:00Z, outcome=sl_first",
      "entry": 4465.409,
      "stop": 4462.555,
      "target": 4473.97,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T01:50:00Z",
      "outcome_time": "2026-01-09T01:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.555,
          "impulse_high": 4470.065,
          "fib_entry_level": "62%",
          "entry": 4465.4088,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4463.61,
              "high": 4468.95,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4469.96, planned_rr=2.0, touch=2026-01-09T06:25:00Z, outcome=tp_first",
      "entry": 4469.96,
      "stop": 4466.205,
      "target": 4477.47,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-09T06:25:00Z",
      "outcome_time": "2026-01-09T06:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4466.205,
          "impulse_high": 4473.715,
          "fib_entry_level": "50%",
          "entry": 4469.96,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4466.1,
              "high": 4471.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4469.059, planned_rr=3.0, touch=2026-01-09T06:20:00Z, outcome=sl_first",
      "entry": 4469.059,
      "stop": 4466.205,
      "target": 4477.62,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T06:20:00Z",
      "outcome_time": "2026-01-09T08:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4466.205,
          "impulse_high": 4473.715,
          "fib_entry_level": "62%",
          "entry": 4469.0588,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4466.1,
              "high": 4471.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4471.727, planned_rr=2.0, touch=2026-01-09T08:05:00Z, outcome=sl_first",
      "entry": 4471.727,
      "stop": 4466.405,
      "target": 4482.373,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T08:05:00Z",
      "outcome_time": "2026-01-09T08:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4466.405,
          "impulse_high": 4477.05,
          "fib_entry_level": "50%",
          "entry": 4471.7275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4471.04,
              "high": 4472.92,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4470.45, planned_rr=3.0, touch=2026-01-09T08:05:00Z, outcome=sl_first",
      "entry": 4470.45,
      "stop": 4466.405,
      "target": 4482.585,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T08:05:00Z",
      "outcome_time": "2026-01-09T08:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4466.405,
          "impulse_high": 4477.05,
          "fib_entry_level": "62%",
          "entry": 4470.4501,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4466.1,
              "high": 4471.04,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T08-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-09T08:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-01-09T08-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4466.405,
          "entry": 4465.38,
          "stop": 4466.405,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4465.075,
              "high": 4465.685,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4471.04,
              "high": 4472.92,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T08-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-09T08:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4474.325, planned_rr=2.0, touch=2026-01-09T08:05:00Z, outcome=sl_first",
      "entry": 4474.325,
      "stop": 4466.405,
      "target": 4490.165,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T08:05:00Z",
      "outcome_time": "2026-01-09T08:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T08-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4466.405,
          "entry": 4474.325,
          "stop": 4466.405,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4471.852, planned_rr=2.0, touch=2026-01-09T09:05:00Z, outcome=sl_first",
      "entry": 4471.852,
      "stop": 4468.525,
      "target": 4478.508,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T09:05:00Z",
      "outcome_time": "2026-01-09T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4468.525,
          "impulse_high": 4475.18,
          "fib_entry_level": "50%",
          "entry": 4471.8525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4471.04,
              "high": 4472.92,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4471.054, planned_rr=3.0, touch=2026-01-09T09:05:00Z, outcome=sl_first",
      "entry": 4471.054,
      "stop": 4468.525,
      "target": 4478.641,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T09:05:00Z",
      "outcome_time": "2026-01-09T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4468.525,
          "impulse_high": 4475.18,
          "fib_entry_level": "62%",
          "entry": 4471.0539,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4471.04,
              "high": 4472.92,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4472.585, planned_rr=2.0, touch=2026-01-09T11:50:00Z, outcome=tp_first",
      "entry": 4472.585,
      "stop": 4468.775,
      "target": 4480.205,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-09T11:50:00Z",
      "outcome_time": "2026-01-09T12:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4468.775,
          "impulse_high": 4476.395,
          "fib_entry_level": "50%",
          "entry": 4472.585,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4471.671, planned_rr=3.0, touch=2026-01-09T11:50:00Z, outcome=tp_first",
      "entry": 4471.671,
      "stop": 4468.775,
      "target": 4480.357,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-09T11:50:00Z",
      "outcome_time": "2026-01-09T12:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4468.775,
          "impulse_high": 4476.395,
          "fib_entry_level": "62%",
          "entry": 4471.6706,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4468.885,
              "high": 4473.24,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4469.315,
              "high": 4472.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4466.932, planned_rr=3.0, touch=2026-01-09T13:20:00Z, outcome=sl_first",
      "entry": 4466.932,
      "stop": 4462.03,
      "target": 4481.638,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T13:20:00Z",
      "outcome_time": "2026-01-09T13:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.03,
          "impulse_high": 4474.93,
          "fib_entry_level": "62%",
          "entry": 4466.932,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-01-09T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4472.097,
      "stop": 4458.935,
      "target": 4498.422,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-01-09T13-30-00Z_long_breaker_continuation",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4458.935,
          "entry": 4472.0975,
          "stop": 4458.935,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4472.02,
              "high": 4472.175,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4469.315,
              "high": 4472.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T13-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-09T13:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4472.097,
      "stop": 4458.935,
      "target": 4498.422,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-01-09T13-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4458.935,
          "entry": 4472.0975,
          "stop": 4458.935,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4472.02,
              "high": 4472.175,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4469.315,
              "high": 4472.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-09T13:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4487.06, planned_rr=2.0, touch=2026-01-09T13:35:00Z, outcome=tp_first",
      "entry": 4487.06,
      "stop": 4458.935,
      "target": 4543.31,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-09T13:35:00Z",
      "outcome_time": "2026-01-11T23:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T13-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4458.935,
          "entry": 4487.06,
          "stop": 4458.935,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4486.685, planned_rr=3.0, touch=2026-01-09T14:05:00Z, outcome=sl_first",
      "entry": 4486.685,
      "stop": 4480.54,
      "target": 4505.118,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T14:05:00Z",
      "outcome_time": "2026-01-09T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.54,
          "impulse_high": 4496.71,
          "fib_entry_level": "62%",
          "entry": 4486.6846,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4488.501, planned_rr=3.0, touch=2026-01-09T14:20:00Z, outcome=sl_first",
      "entry": 4488.501,
      "stop": 4483.855,
      "target": 4502.437,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T14:20:00Z",
      "outcome_time": "2026-01-09T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4483.855,
          "impulse_high": 4496.08,
          "fib_entry_level": "62%",
          "entry": 4488.5005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4502.337, planned_rr=2.0, touch=2026-01-09T15:20:00Z, outcome=sl_first",
      "entry": 4502.337,
      "stop": 4493.48,
      "target": 4520.052,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T15:20:00Z",
      "outcome_time": "2026-01-09T17:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4493.48,
          "impulse_high": 4511.195,
          "fib_entry_level": "50%",
          "entry": 4502.3375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4500.42,
              "high": 4505.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4500.212, planned_rr=3.0, touch=2026-01-09T15:20:00Z, outcome=sl_first",
      "entry": 4500.212,
      "stop": 4493.48,
      "target": 4520.407,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T15:20:00Z",
      "outcome_time": "2026-01-09T17:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4493.48,
          "impulse_high": 4511.195,
          "fib_entry_level": "62%",
          "entry": 4500.2117,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4509.915, planned_rr=3.0, touch=2026-01-09T15:35:00Z, outcome=sl_first",
      "entry": 4509.915,
      "stop": 4505.42,
      "target": 4523.402,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-09T15:35:00Z",
      "outcome_time": "2026-01-09T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4505.42,
          "impulse_high": 4517.25,
          "fib_entry_level": "62%",
          "entry": 4509.9154,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-09T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-09T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4496.386, planned_rr=3.0, touch=2026-01-09T18:50:00Z, outcome=tp_first",
      "entry": 4496.386,
      "stop": 4491.33,
      "target": 4511.554,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-09T18:50:00Z",
      "outcome_time": "2026-01-11T23:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-09T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-09",
        "timestamp": "2026-01-09T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.33,
          "impulse_high": 4504.635,
          "fib_entry_level": "62%",
          "entry": 4496.3859,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4517.25,
            "PDL": 4452.92,
            "PWH": 4517.25,
            "PWL": 4349.355
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4578.347, planned_rr=2.0, touch=2026-01-12T00:35:00Z, outcome=sl_first",
      "entry": 4578.347,
      "stop": 4562.415,
      "target": 4610.212,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T00:35:00Z",
      "outcome_time": "2026-01-12T02:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4562.415,
          "impulse_high": 4594.28,
          "fib_entry_level": "50%",
          "entry": 4578.3475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4566.145,
              "high": 4588.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4574.524, planned_rr=3.0, touch=2026-01-12T00:35:00Z, outcome=sl_first",
      "entry": 4574.524,
      "stop": 4562.415,
      "target": 4610.85,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T00:35:00Z",
      "outcome_time": "2026-01-12T02:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4562.415,
          "impulse_high": 4594.28,
          "fib_entry_level": "62%",
          "entry": 4574.5237,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4566.145,
              "high": 4588.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4570.88, planned_rr=2.0, touch=2026-01-12T02:35:00Z, outcome=tp_first",
      "entry": 4570.88,
      "stop": 4562.595,
      "target": 4587.45,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-12T02:35:00Z",
      "outcome_time": "2026-01-12T07:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4562.595,
          "impulse_high": 4579.165,
          "fib_entry_level": "50%",
          "entry": 4570.88,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4566.145,
              "high": 4588.36,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4570.275,
              "high": 4573.6,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4568.892, planned_rr=3.0, touch=2026-01-12T02:35:00Z, outcome=tp_first",
      "entry": 4568.892,
      "stop": 4562.595,
      "target": 4587.781,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-12T02:35:00Z",
      "outcome_time": "2026-01-12T07:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4562.595,
          "impulse_high": 4579.165,
          "fib_entry_level": "62%",
          "entry": 4568.8916,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4566.145,
              "high": 4588.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4576.392, planned_rr=2.0, touch=2026-01-12T05:35:00Z, outcome=tp_first",
      "entry": 4576.392,
      "stop": 4569.745,
      "target": 4589.688,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-12T05:35:00Z",
      "outcome_time": "2026-01-12T07:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4569.745,
          "impulse_high": 4583.04,
          "fib_entry_level": "50%",
          "entry": 4576.3925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4574.04,
              "high": 4578.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4574.797, planned_rr=3.0, touch=2026-01-12T06:05:00Z, outcome=tp_first",
      "entry": 4574.797,
      "stop": 4569.745,
      "target": 4589.953,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-12T06:05:00Z",
      "outcome_time": "2026-01-12T08:45:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4569.745,
          "impulse_high": 4583.04,
          "fib_entry_level": "62%",
          "entry": 4574.7971,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4574.04,
              "high": 4578.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4591.767, planned_rr=2.0, touch=2026-01-12T09:45:00Z, outcome=sl_first",
      "entry": 4591.767,
      "stop": 4585.085,
      "target": 4605.132,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T09:45:00Z",
      "outcome_time": "2026-01-12T11:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4585.085,
          "impulse_high": 4598.45,
          "fib_entry_level": "50%",
          "entry": 4591.7675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4589.63,
              "high": 4593.425,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4590.164, planned_rr=3.0, touch=2026-01-12T09:50:00Z, outcome=sl_first",
      "entry": 4590.164,
      "stop": 4585.085,
      "target": 4605.4,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T09:50:00Z",
      "outcome_time": "2026-01-12T11:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4585.085,
          "impulse_high": 4598.45,
          "fib_entry_level": "62%",
          "entry": 4590.1637,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4589.63,
              "high": 4593.425,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4587.391, planned_rr=3.0, touch=2026-01-12T11:35:00Z, outcome=sl_first",
      "entry": 4587.391,
      "stop": 4584.49,
      "target": 4596.095,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T11:35:00Z",
      "outcome_time": "2026-01-12T11:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4584.49,
          "impulse_high": 4592.125,
          "fib_entry_level": "62%",
          "entry": 4587.3913,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T11-45-00Z_long_breaker_continuation",
      "timestamp": "2026-01-12T11:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4591.528, planned_rr=2.0, touch=2026-01-12T13:00:00Z, outcome=tp_first",
      "entry": 4591.528,
      "stop": 4581.75,
      "target": 4611.083,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-12T13:00:00Z",
      "outcome_time": "2026-01-12T13:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T11-45-00Z_long_breaker_continuation",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4581.75,
          "entry": 4591.5275,
          "stop": 4581.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4589.63,
              "high": 4593.425,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4590.84,
              "high": 4604.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4599.108, planned_rr=2.0, touch=2026-01-12T13:05:00Z, outcome=tp_first",
      "entry": 4599.108,
      "stop": 4588.715,
      "target": 4619.892,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-12T13:05:00Z",
      "outcome_time": "2026-01-12T13:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4588.715,
          "impulse_high": 4609.5,
          "fib_entry_level": "50%",
          "entry": 4599.1075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4590.84,
              "high": 4604.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4596.613, planned_rr=3.0, touch=2026-01-12T13:05:00Z, outcome=tp_first",
      "entry": 4596.613,
      "stop": 4588.715,
      "target": 4620.308,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-12T13:05:00Z",
      "outcome_time": "2026-01-12T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4588.715,
          "impulse_high": 4609.5,
          "fib_entry_level": "62%",
          "entry": 4596.6133,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4590.84,
              "high": 4604.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4598.34, planned_rr=2.0, touch=2026-01-12T14:35:00Z, outcome=tp_first",
      "entry": 4598.34,
      "stop": 4585.15,
      "target": 4624.72,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-12T14:35:00Z",
      "outcome_time": "2026-01-12T15:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4585.15,
          "impulse_high": 4611.53,
          "fib_entry_level": "50%",
          "entry": 4598.34,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4590.84,
              "high": 4604.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4608.557, planned_rr=3.0, touch=2026-01-12T15:05:00Z, outcome=tp_first",
      "entry": 4608.557,
      "stop": 4601.905,
      "target": 4628.513,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-12T15:05:00Z",
      "outcome_time": "2026-01-12T16:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4601.905,
          "impulse_high": 4619.41,
          "fib_entry_level": "62%",
          "entry": 4608.5569,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4608.275,
              "high": 4610.365,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T21-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T21:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4592.7, planned_rr=3.0, touch=2026-01-12T21:50:00Z, outcome=sl_first",
      "entry": 4592.7,
      "stop": 4589.415,
      "target": 4602.555,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T21:50:00Z",
      "outcome_time": "2026-01-12T23:10:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T21-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T21:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4589.415,
          "impulse_high": 4598.06,
          "fib_entry_level": "62%",
          "entry": 4592.7001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T21-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-12T21:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4591.222, planned_rr=2.0, touch=2026-01-12T23:10:00Z, outcome=sl_first",
      "entry": 4591.222,
      "stop": 4589.415,
      "target": 4594.837,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T23:10:00Z",
      "outcome_time": "2026-01-12T23:10:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T21-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T21:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4589.415,
          "entry": 4591.2225,
          "stop": 4589.415,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4590.24,
              "high": 4592.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-12T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-12T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4591.444, planned_rr=3.0, touch=2026-01-12T23:50:00Z, outcome=sl_first",
      "entry": 4591.444,
      "stop": 4586.2,
      "target": 4607.176,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-12T23:50:00Z",
      "outcome_time": "2026-01-13T00:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-12T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-12",
        "timestamp": "2026-01-12T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4586.2,
          "impulse_high": 4600.0,
          "fib_entry_level": "62%",
          "entry": 4591.4439999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4590.24,
              "high": 4592.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4630.19,
            "PDL": 4521.19,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4582.053, planned_rr=3.0, touch=2026-01-13T02:30:00Z, outcome=tp_first",
      "entry": 4582.053,
      "stop": 4576.75,
      "target": 4597.962,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-13T02:30:00Z",
      "outcome_time": "2026-01-13T03:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4576.75,
          "impulse_high": 4590.705,
          "fib_entry_level": "62%",
          "entry": 4582.0529,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4597.955, planned_rr=2.0, touch=2026-01-13T05:20:00Z, outcome=sl_first",
      "entry": 4597.955,
      "stop": 4594.37,
      "target": 4605.125,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-13T05:20:00Z",
      "outcome_time": "2026-01-13T05:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4594.37,
          "impulse_high": 4601.54,
          "fib_entry_level": "50%",
          "entry": 4597.955,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4591.775,
              "high": 4598.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4597.095, planned_rr=3.0, touch=2026-01-13T05:20:00Z, outcome=sl_first",
      "entry": 4597.095,
      "stop": 4594.37,
      "target": 4605.268,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-13T05:20:00Z",
      "outcome_time": "2026-01-13T05:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4594.37,
          "impulse_high": 4601.54,
          "fib_entry_level": "62%",
          "entry": 4597.0946,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4591.775,
              "high": 4598.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4584.282, planned_rr=3.0, touch=2026-01-13T10:00:00Z, outcome=sl_first",
      "entry": 4584.282,
      "stop": 4579.705,
      "target": 4598.013,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-13T10:00:00Z",
      "outcome_time": "2026-01-13T12:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4579.705,
          "impulse_high": 4591.75,
          "fib_entry_level": "62%",
          "entry": 4584.2821,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4582.62,
              "high": 4584.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4608.403, planned_rr=3.0, touch=2026-01-13T13:55:00Z, outcome=tp_first",
      "entry": 4608.403,
      "stop": 4600.925,
      "target": 4630.839,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-13T13:55:00Z",
      "outcome_time": "2026-01-13T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4600.925,
          "impulse_high": 4620.605,
          "fib_entry_level": "62%",
          "entry": 4608.4034,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4612.961, planned_rr=3.0, touch=2026-01-13T14:05:00Z, outcome=tp_first",
      "entry": 4612.961,
      "stop": 4609.155,
      "target": 4624.378,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-13T14:05:00Z",
      "outcome_time": "2026-01-13T14:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4609.155,
          "impulse_high": 4619.17,
          "fib_entry_level": "62%",
          "entry": 4612.9607,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4618.977, planned_rr=2.0, touch=2026-01-13T14:35:00Z, outcome=tp_first",
      "entry": 4618.977,
      "stop": 4611.8,
      "target": 4633.332,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-13T14:35:00Z",
      "outcome_time": "2026-01-13T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4611.8,
          "impulse_high": 4626.155,
          "fib_entry_level": "50%",
          "entry": 4618.9775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4614.62,
              "high": 4623.805,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-13T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-13T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4617.255, planned_rr=3.0, touch=2026-01-13T14:35:00Z, outcome=tp_first",
      "entry": 4617.255,
      "stop": 4611.8,
      "target": 4633.62,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-13T14:35:00Z",
      "outcome_time": "2026-01-13T14:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-13T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-13",
        "timestamp": "2026-01-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4611.8,
          "impulse_high": 4626.155,
          "fib_entry_level": "62%",
          "entry": 4617.2549,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4614.62,
              "high": 4623.805,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4634.89,
            "PDL": 4569.47,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4620.34, planned_rr=2.0, touch=2026-01-14T05:55:00Z, outcome=tp_first",
      "entry": 4620.34,
      "stop": 4614.99,
      "target": 4631.04,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-14T05:55:00Z",
      "outcome_time": "2026-01-14T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4614.99,
          "impulse_high": 4625.69,
          "fib_entry_level": "50%",
          "entry": 4620.34,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4613.51,
              "high": 4621.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4619.056, planned_rr=3.0, touch=2026-01-14T05:55:00Z, outcome=tp_first",
      "entry": 4619.056,
      "stop": 4614.99,
      "target": 4631.254,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-14T05:55:00Z",
      "outcome_time": "2026-01-14T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4614.99,
          "impulse_high": 4625.69,
          "fib_entry_level": "62%",
          "entry": 4619.056,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4613.51,
              "high": 4621.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4633.343, planned_rr=3.0, touch=2026-01-14T05:10:00Z, outcome=sl_first",
      "entry": 4633.343,
      "stop": 4629.435,
      "target": 4645.068,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T05:10:00Z",
      "outcome_time": "2026-01-14T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4629.435,
          "impulse_high": 4639.72,
          "fib_entry_level": "62%",
          "entry": 4633.3433,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4626.91, planned_rr=2.0, touch=2026-01-14T06:05:00Z, outcome=sl_first",
      "entry": 4626.91,
      "stop": 4618.575,
      "target": 4643.58,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T06:05:00Z",
      "outcome_time": "2026-01-14T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4618.575,
          "impulse_high": 4635.245,
          "fib_entry_level": "50%",
          "entry": 4626.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4625.69,
              "high": 4626.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4624.91, planned_rr=3.0, touch=2026-01-14T06:05:00Z, outcome=sl_first",
      "entry": 4624.91,
      "stop": 4618.575,
      "target": 4643.913,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T06:05:00Z",
      "outcome_time": "2026-01-14T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4618.575,
          "impulse_high": 4635.245,
          "fib_entry_level": "62%",
          "entry": 4624.9096,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4633.203, planned_rr=3.0, touch=2026-01-14T06:50:00Z, outcome=sl_first",
      "entry": 4633.203,
      "stop": 4630.655,
      "target": 4640.847,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T06:50:00Z",
      "outcome_time": "2026-01-14T08:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4630.655,
          "impulse_high": 4637.36,
          "fib_entry_level": "62%",
          "entry": 4633.202899999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4627.773, planned_rr=3.0, touch=2026-01-14T09:40:00Z, outcome=tp_first",
      "entry": 4627.773,
      "stop": 4624.67,
      "target": 4637.081,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-14T09:40:00Z",
      "outcome_time": "2026-01-14T10:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4624.67,
          "impulse_high": 4632.835,
          "fib_entry_level": "62%",
          "entry": 4627.7727,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4633.509, planned_rr=3.0, touch=2026-01-14T13:00:00Z, outcome=sl_first",
      "entry": 4633.509,
      "stop": 4630.315,
      "target": 4643.091,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T13:00:00Z",
      "outcome_time": "2026-01-14T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4630.315,
          "impulse_high": 4638.72,
          "fib_entry_level": "62%",
          "entry": 4633.5089,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4631.64,
              "high": 4634.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T13-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-14T13:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4632.863, planned_rr=2.0, touch=2026-01-14T13:35:00Z, outcome=sl_first",
      "entry": 4632.863,
      "stop": 4624.305,
      "target": 4649.977,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T13:35:00Z",
      "outcome_time": "2026-01-14T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T13-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4624.305,
          "entry": 4632.8625,
          "stop": 4624.305,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4631.64,
              "high": 4634.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-14T13:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4636.96, planned_rr=2.0, touch=2026-01-14T13:40:00Z, outcome=sl_first",
      "entry": 4636.96,
      "stop": 4624.305,
      "target": 4662.27,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T13:40:00Z",
      "outcome_time": "2026-01-14T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T13-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4624.305,
          "entry": 4636.96,
          "stop": 4624.305,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4628.597, planned_rr=3.0, touch=2026-01-14T21:10:00Z, outcome=sl_first",
      "entry": 4628.597,
      "stop": 4625.825,
      "target": 4636.913,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T21:10:00Z",
      "outcome_time": "2026-01-14T21:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4625.825,
          "impulse_high": 4633.12,
          "fib_entry_level": "62%",
          "entry": 4628.5971,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-14T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-14T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4610.224, planned_rr=3.0, touch=2026-01-14T23:50:00Z, outcome=sl_first",
      "entry": 4610.224,
      "stop": 4606.555,
      "target": 4621.231,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-14T23:50:00Z",
      "outcome_time": "2026-01-15T01:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-14T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-14",
        "timestamp": "2026-01-14T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4606.555,
          "impulse_high": 4616.21,
          "fib_entry_level": "62%",
          "entry": 4610.2239,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4642.97,
            "PDL": 4591.495,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4604.182, planned_rr=3.0, touch=2026-01-15T02:45:00Z, outcome=sl_first",
      "entry": 4604.182,
      "stop": 4597.665,
      "target": 4623.733,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-15T02:45:00Z",
      "outcome_time": "2026-01-15T02:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4597.665,
          "impulse_high": 4614.815,
          "fib_entry_level": "62%",
          "entry": 4604.182,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4587.339, planned_rr=3.0, touch=2026-01-15T04:05:00Z, outcome=tp_first",
      "entry": 4587.339,
      "stop": 4581.065,
      "target": 4606.16,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-15T04:05:00Z",
      "outcome_time": "2026-01-15T06:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4581.065,
          "impulse_high": 4597.575,
          "fib_entry_level": "62%",
          "entry": 4587.3387999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T03-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-15T03:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "ICT Sweep + MSS + FVG Long entry=4607.297, planned_rr=2.0, touch=2026-01-15T06:10:00Z, outcome=unresolved",
      "entry": 4607.297,
      "stop": 4581.065,
      "target": 4659.762,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-15T06:10:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T03-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4581.065,
          "entry": 4607.2975,
          "stop": 4581.065,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4607.23,
              "high": 4607.365,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T03-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-15T03:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Long entry=4596.7, planned_rr=2.0, touch=2026-01-15T03:35:00Z, outcome=unresolved",
      "entry": 4596.7,
      "stop": 4581.065,
      "target": 4627.97,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-15T03:35:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T03-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4581.065,
          "entry": 4596.7,
          "stop": 4581.065,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4601.145, planned_rr=2.0, touch=2026-01-15T06:05:00Z, outcome=tp_first",
      "entry": 4601.145,
      "stop": 4593.635,
      "target": 4616.165,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-15T06:05:00Z",
      "outcome_time": "2026-01-15T10:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4593.635,
          "impulse_high": 4608.655,
          "fib_entry_level": "50%",
          "entry": 4601.145,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4599.01,
              "high": 4603.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4599.343, planned_rr=3.0, touch=2026-01-15T06:05:00Z, outcome=tp_first",
      "entry": 4599.343,
      "stop": 4593.635,
      "target": 4616.465,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-15T06:05:00Z",
      "outcome_time": "2026-01-15T10:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4593.635,
          "impulse_high": 4608.655,
          "fib_entry_level": "62%",
          "entry": 4599.3426,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4599.01,
              "high": 4603.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4615.055, planned_rr=2.0, touch=2026-01-15T10:35:00Z, outcome=sl_first",
      "entry": 4615.055,
      "stop": 4610.655,
      "target": 4623.855,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-15T10:35:00Z",
      "outcome_time": "2026-01-15T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4610.655,
          "impulse_high": 4619.455,
          "fib_entry_level": "50%",
          "entry": 4615.055,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4611.28,
              "high": 4615.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4613.999, planned_rr=3.0, touch=2026-01-15T10:35:00Z, outcome=sl_first",
      "entry": 4613.999,
      "stop": 4610.655,
      "target": 4624.031,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-15T10:35:00Z",
      "outcome_time": "2026-01-15T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4610.655,
          "impulse_high": 4619.455,
          "fib_entry_level": "62%",
          "entry": 4613.999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4611.28,
              "high": 4615.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4606.042, planned_rr=3.0, touch=2026-01-15T15:05:00Z, outcome=tp_first",
      "entry": 4606.042,
      "stop": 4600.41,
      "target": 4622.936,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-15T15:05:00Z",
      "outcome_time": "2026-01-15T16:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4600.41,
          "impulse_high": 4615.23,
          "fib_entry_level": "62%",
          "entry": 4606.0416,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4614.32, planned_rr=3.0, touch=2026-01-15T16:05:00Z, outcome=sl_first",
      "entry": 4614.32,
      "stop": 4608.785,
      "target": 4630.924,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-15T16:05:00Z",
      "outcome_time": "2026-01-15T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4608.785,
          "impulse_high": 4623.35,
          "fib_entry_level": "62%",
          "entry": 4614.3197,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-15T21-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-15T21:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4607.441, planned_rr=3.0, touch=2026-01-15T23:30:00Z, outcome=sl_first",
      "entry": 4607.441,
      "stop": 4604.5,
      "target": 4616.265,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-15T23:30:00Z",
      "outcome_time": "2026-01-16T00:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-15T21-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-15",
        "timestamp": "2026-01-15T21:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4604.5,
          "impulse_high": 4612.24,
          "fib_entry_level": "62%",
          "entry": 4607.4412,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4625.015,
            "PDL": 4581.065,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4597.897, planned_rr=3.0, touch=2026-01-16T05:20:00Z, outcome=tp_first",
      "entry": 4597.897,
      "stop": 4595.53,
      "target": 4605.0,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T05:20:00Z",
      "outcome_time": "2026-01-16T05:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4595.53,
          "impulse_high": 4601.76,
          "fib_entry_level": "62%",
          "entry": 4597.8974,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4601.805, planned_rr=2.0, touch=2026-01-16T05:35:00Z, outcome=tp_first",
      "entry": 4601.805,
      "stop": 4596.55,
      "target": 4612.315,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-16T05:35:00Z",
      "outcome_time": "2026-01-16T05:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4596.55,
          "impulse_high": 4607.06,
          "fib_entry_level": "50%",
          "entry": 4601.805,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4601.76,
              "high": 4606.72,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4599.315,
              "high": 4604.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4600.544, planned_rr=3.0, touch=2026-01-16T05:35:00Z, outcome=tp_first",
      "entry": 4600.544,
      "stop": 4596.55,
      "target": 4612.525,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T05:35:00Z",
      "outcome_time": "2026-01-16T05:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4596.55,
          "impulse_high": 4607.06,
          "fib_entry_level": "62%",
          "entry": 4600.5438,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4599.315,
              "high": 4604.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4610.366, planned_rr=3.0, touch=2026-01-16T06:00:00Z, outcome=sl_first",
      "entry": 4610.366,
      "stop": 4606.72,
      "target": 4621.304,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T06:00:00Z",
      "outcome_time": "2026-01-16T06:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4606.72,
          "impulse_high": 4616.315,
          "fib_entry_level": "62%",
          "entry": 4610.3661,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4609.25, planned_rr=3.0, touch=2026-01-16T06:05:00Z, outcome=tp_first",
      "entry": 4609.25,
      "stop": 4612.41,
      "target": 4599.771,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T06:05:00Z",
      "outcome_time": "2026-01-16T06:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4604.095,
          "impulse_high": 4612.41,
          "fib_entry_level": "62%",
          "entry": 4609.2503,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4601.913, planned_rr=2.0, touch=2026-01-16T06:40:00Z, outcome=sl_first",
      "entry": 4601.913,
      "stop": 4608.145,
      "target": 4589.448,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T06:40:00Z",
      "outcome_time": "2026-01-16T07:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4595.68,
          "impulse_high": 4608.145,
          "fib_entry_level": "50%",
          "entry": 4601.9125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4599.315,
              "high": 4603.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4603.408, planned_rr=3.0, touch=2026-01-16T06:40:00Z, outcome=sl_first",
      "entry": 4603.408,
      "stop": 4608.145,
      "target": 4589.198,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T06:40:00Z",
      "outcome_time": "2026-01-16T07:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4595.68,
          "impulse_high": 4608.145,
          "fib_entry_level": "62%",
          "entry": 4603.4083,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4599.315,
              "high": 4603.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4604.585, planned_rr=2.0, touch=2026-01-16T07:05:00Z, outcome=sl_first",
      "entry": 4604.585,
      "stop": 4596.925,
      "target": 4619.905,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T07:05:00Z",
      "outcome_time": "2026-01-16T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4596.925,
          "impulse_high": 4612.245,
          "fib_entry_level": "50%",
          "entry": 4604.585,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4601.76,
              "high": 4606.72,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4599.315,
              "high": 4604.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4602.747, planned_rr=3.0, touch=2026-01-16T07:05:00Z, outcome=sl_first",
      "entry": 4602.747,
      "stop": 4596.925,
      "target": 4620.211,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T07:05:00Z",
      "outcome_time": "2026-01-16T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4596.925,
          "impulse_high": 4612.245,
          "fib_entry_level": "62%",
          "entry": 4602.7466,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4601.76,
              "high": 4606.72,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4599.315,
              "high": 4604.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4604.26, planned_rr=2.0, touch=2026-01-16T10:50:00Z, outcome=sl_first",
      "entry": 4604.26,
      "stop": 4608.73,
      "target": 4595.32,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T10:50:00Z",
      "outcome_time": "2026-01-16T11:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4599.79,
          "impulse_high": 4608.73,
          "fib_entry_level": "50%",
          "entry": 4604.26,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4602.27,
              "high": 4608.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4605.333, planned_rr=3.0, touch=2026-01-16T10:50:00Z, outcome=sl_first",
      "entry": 4605.333,
      "stop": 4608.73,
      "target": 4595.141,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T10:50:00Z",
      "outcome_time": "2026-01-16T11:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4599.79,
          "impulse_high": 4608.73,
          "fib_entry_level": "62%",
          "entry": 4605.3328,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4602.27,
              "high": 4608.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4601.708, planned_rr=3.0, touch=2026-01-16T11:05:00Z, outcome=tp_first",
      "entry": 4601.708,
      "stop": 4598.6,
      "target": 4611.034,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T11:05:00Z",
      "outcome_time": "2026-01-16T11:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4598.6,
          "impulse_high": 4606.78,
          "fib_entry_level": "62%",
          "entry": 4601.7084,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T11-00-00Z_long_breaker_continuation",
      "timestamp": "2026-01-16T11:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4605.233, planned_rr=2.0, touch=2026-01-16T11:10:00Z, outcome=sl_first",
      "entry": 4605.233,
      "stop": 4598.6,
      "target": 4618.497,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T11:10:00Z",
      "outcome_time": "2026-01-16T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T11-00-00Z_long_breaker_continuation",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4598.6,
          "entry": 4605.2325,
          "stop": 4598.6,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4603.55,
              "high": 4606.915,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4606.78,
              "high": 4609.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T11-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-16T11:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4605.233, planned_rr=2.0, touch=2026-01-16T11:10:00Z, outcome=sl_first",
      "entry": 4605.233,
      "stop": 4598.6,
      "target": 4618.497,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T11:10:00Z",
      "outcome_time": "2026-01-16T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T11-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4598.6,
          "entry": 4605.2325,
          "stop": 4598.6,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4603.55,
              "high": 4606.915,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4606.78,
              "high": 4609.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T11-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-16T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4606.555, planned_rr=2.0, touch=2026-01-16T11:10:00Z, outcome=sl_first",
      "entry": 4606.555,
      "stop": 4598.6,
      "target": 4622.465,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T11:10:00Z",
      "outcome_time": "2026-01-16T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T11-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4598.6,
          "entry": 4606.555,
          "stop": 4598.6,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4601.51, planned_rr=3.0, touch=2026-01-16T13:05:00Z, outcome=tp_first",
      "entry": 4601.51,
      "stop": 4605.77,
      "target": 4588.731,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T13:05:00Z",
      "outcome_time": "2026-01-16T13:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4594.56,
          "impulse_high": 4605.77,
          "fib_entry_level": "62%",
          "entry": 4601.510200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4592.007, planned_rr=3.0, touch=2026-01-16T13:20:00Z, outcome=sl_first",
      "entry": 4592.007,
      "stop": 4597.73,
      "target": 4574.839,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T13:20:00Z",
      "outcome_time": "2026-01-16T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4582.67,
          "impulse_high": 4597.73,
          "fib_entry_level": "62%",
          "entry": 4592.0072,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4591.365, planned_rr=3.0, touch=2026-01-16T13:35:00Z, outcome=tp_first",
      "entry": 4591.365,
      "stop": 4585.15,
      "target": 4610.01,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T13:35:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4585.15,
          "impulse_high": 4601.505,
          "fib_entry_level": "62%",
          "entry": 4591.3649,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4603.938, planned_rr=2.0, touch=2026-01-16T14:20:00Z, outcome=sl_first",
      "entry": 4603.938,
      "stop": 4609.495,
      "target": 4592.823,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T14:20:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4598.38,
          "impulse_high": 4609.495,
          "fib_entry_level": "50%",
          "entry": 4603.9375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4605.271, planned_rr=3.0, touch=2026-01-16T14:20:00Z, outcome=sl_first",
      "entry": 4605.271,
      "stop": 4609.495,
      "target": 4592.6,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T14:20:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4598.38,
          "impulse_high": 4609.495,
          "fib_entry_level": "62%",
          "entry": 4605.2713,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-01-16T14:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "ICT Sweep + MSS + FVG Short entry=4608.077, planned_rr=2.0, touch=2026-01-16T14:35:00Z, outcome=ambiguous_same_bar",
      "entry": 4608.077,
      "stop": 4609.495,
      "target": 4605.242,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-16T14:35:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4609.495,
          "entry": 4608.077499999999,
          "stop": 4609.495,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4606.815,
              "high": 4609.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-16T14:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4599.08, planned_rr=2.0, touch=2026-01-16T14:25:00Z, outcome=sl_first",
      "entry": 4599.08,
      "stop": 4609.495,
      "target": 4578.25,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T14:25:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4609.495,
          "entry": 4599.08,
          "stop": 4609.495,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4602.063, planned_rr=3.0, touch=2026-01-16T15:15:00Z, outcome=sl_first",
      "entry": 4602.063,
      "stop": 4596.135,
      "target": 4619.847,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T15:15:00Z",
      "outcome_time": "2026-01-16T15:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4596.135,
          "impulse_high": 4611.735,
          "fib_entry_level": "62%",
          "entry": 4602.063,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T14-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-01-16T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4608.93, planned_rr=2.0, touch=2026-01-16T14:35:00Z, outcome=sl_first",
      "entry": 4608.93,
      "stop": 4611.735,
      "target": 4603.32,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T14:35:00Z",
      "outcome_time": "2026-01-16T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T14-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4611.735,
          "entry": 4608.93,
          "stop": 4611.735,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4613.925, planned_rr=2.0, touch=2026-01-16T15:15:00Z, outcome=sl_first",
      "entry": 4613.925,
      "stop": 4607.46,
      "target": 4626.855,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T15:15:00Z",
      "outcome_time": "2026-01-16T15:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4607.46,
          "impulse_high": 4620.39,
          "fib_entry_level": "50%",
          "entry": 4613.925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4607.31,
              "high": 4614.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4612.373, planned_rr=3.0, touch=2026-01-16T15:15:00Z, outcome=sl_first",
      "entry": 4612.373,
      "stop": 4607.46,
      "target": 4627.114,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-16T15:15:00Z",
      "outcome_time": "2026-01-16T15:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4607.46,
          "impulse_high": 4620.39,
          "fib_entry_level": "62%",
          "entry": 4612.3734,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4607.31,
              "high": 4614.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T15-00-00Z_short_breaker_continuation",
      "timestamp": "2026-01-16T15:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4608.077, planned_rr=2.0, touch=2026-01-16T15:15:00Z, outcome=tp_first",
      "entry": 4608.077,
      "stop": 4620.39,
      "target": 4583.452,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-16T15:15:00Z",
      "outcome_time": "2026-01-16T15:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T15-00-00Z_short_breaker_continuation",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4620.39,
          "entry": 4608.077499999999,
          "stop": 4620.39,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4606.815,
              "high": 4609.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4591.163, planned_rr=2.0, touch=2026-01-16T15:20:00Z, outcome=tp_first",
      "entry": 4591.163,
      "stop": 4617.75,
      "target": 4537.988,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-16T15:20:00Z",
      "outcome_time": "2026-01-16T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4564.575,
          "impulse_high": 4617.75,
          "fib_entry_level": "50%",
          "entry": 4591.1625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4597.543, planned_rr=3.0, touch=2026-01-16T15:20:00Z, outcome=tp_first",
      "entry": 4597.543,
      "stop": 4617.75,
      "target": 4536.924,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T15:20:00Z",
      "outcome_time": "2026-01-16T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4564.575,
          "impulse_high": 4617.75,
          "fib_entry_level": "62%",
          "entry": 4597.5435,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4570.575,
              "high": 4607.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4580.63, planned_rr=2.0, touch=2026-01-16T16:05:00Z, outcome=tp_first",
      "entry": 4580.63,
      "stop": 4567.795,
      "target": 4606.3,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-16T16:05:00Z",
      "outcome_time": "2026-01-18T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4567.795,
          "impulse_high": 4593.465,
          "fib_entry_level": "50%",
          "entry": 4580.63,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4575.66,
              "high": 4584.415,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-16T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4577.55, planned_rr=3.0, touch=2026-01-16T17:25:00Z, outcome=tp_first",
      "entry": 4577.55,
      "stop": 4567.795,
      "target": 4606.813,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-16T17:25:00Z",
      "outcome_time": "2026-01-18T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-16",
        "timestamp": "2026-01-16T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4567.795,
          "impulse_high": 4593.465,
          "fib_entry_level": "62%",
          "entry": 4577.5496,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4575.66,
              "high": 4584.415,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-18T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-18T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4665.305, planned_rr=3.0, touch=2026-01-18T23:20:00Z, outcome=sl_first",
      "entry": 4665.305,
      "stop": 4653.7,
      "target": 4700.121,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-18T23:20:00Z",
      "outcome_time": "2026-01-19T02:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-18T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-18",
        "timestamp": "2026-01-18T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4653.7,
          "impulse_high": 4684.24,
          "fib_entry_level": "62%",
          "entry": 4665.3052,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4620.975,
            "PDL": 4536.49,
            "PWH": 4642.97,
            "PWL": 4521.19
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4667.551, planned_rr=3.0, touch=2026-01-19T00:20:00Z, outcome=sl_first",
      "entry": 4667.551,
      "stop": 4660.89,
      "target": 4687.536,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T00:20:00Z",
      "outcome_time": "2026-01-19T01:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4660.89,
          "impulse_high": 4678.42,
          "fib_entry_level": "62%",
          "entry": 4667.5514,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4667.237, planned_rr=2.0, touch=2026-01-19T05:40:00Z, outcome=tp_first",
      "entry": 4667.237,
      "stop": 4663.195,
      "target": 4675.322,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-19T05:40:00Z",
      "outcome_time": "2026-01-19T06:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4663.195,
          "impulse_high": 4671.28,
          "fib_entry_level": "50%",
          "entry": 4667.237499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.15,
              "high": 4668.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4666.267, planned_rr=3.0, touch=2026-01-19T05:40:00Z, outcome=tp_first",
      "entry": 4666.267,
      "stop": 4663.195,
      "target": 4675.484,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-19T05:40:00Z",
      "outcome_time": "2026-01-19T06:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4663.195,
          "impulse_high": 4671.28,
          "fib_entry_level": "62%",
          "entry": 4666.2672999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.15,
              "high": 4668.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4668.142, planned_rr=2.0, touch=2026-01-19T05:50:00Z, outcome=tp_first",
      "entry": 4668.142,
      "stop": 4664.245,
      "target": 4675.938,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-19T05:50:00Z",
      "outcome_time": "2026-01-19T06:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4664.245,
          "impulse_high": 4672.04,
          "fib_entry_level": "50%",
          "entry": 4668.1425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.15,
              "high": 4668.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4667.207, planned_rr=3.0, touch=2026-01-19T05:50:00Z, outcome=tp_first",
      "entry": 4667.207,
      "stop": 4664.245,
      "target": 4676.093,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-19T05:50:00Z",
      "outcome_time": "2026-01-19T06:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4664.245,
          "impulse_high": 4672.04,
          "fib_entry_level": "62%",
          "entry": 4667.2071,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.15,
              "high": 4668.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4674.99, planned_rr=3.0, touch=2026-01-19T06:50:00Z, outcome=sl_first",
      "entry": 4674.99,
      "stop": 4672.465,
      "target": 4682.565,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T06:50:00Z",
      "outcome_time": "2026-01-19T07:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4672.465,
          "impulse_high": 4679.11,
          "fib_entry_level": "62%",
          "entry": 4674.9901,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4666.9, planned_rr=2.0, touch=2026-01-19T09:05:00Z, outcome=sl_first",
      "entry": 4666.9,
      "stop": 4662.055,
      "target": 4676.59,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T09:05:00Z",
      "outcome_time": "2026-01-19T10:40:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4662.055,
          "impulse_high": 4671.745,
          "fib_entry_level": "50%",
          "entry": 4666.9,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.49,
              "high": 4667.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4665.737, planned_rr=3.0, touch=2026-01-19T09:05:00Z, outcome=sl_first",
      "entry": 4665.737,
      "stop": 4662.055,
      "target": 4676.784,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T09:05:00Z",
      "outcome_time": "2026-01-19T10:40:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4662.055,
          "impulse_high": 4671.745,
          "fib_entry_level": "62%",
          "entry": 4665.7372000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4662.566, planned_rr=3.0, touch=2026-01-19T14:05:00Z, outcome=tp_first",
      "entry": 4662.566,
      "stop": 4660.185,
      "target": 4669.708,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-19T14:05:00Z",
      "outcome_time": "2026-01-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4660.185,
          "impulse_high": 4666.45,
          "fib_entry_level": "62%",
          "entry": 4662.5657,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4669.065, planned_rr=2.0, touch=2026-01-19T12:50:00Z, outcome=sl_first",
      "entry": 4669.065,
      "stop": 4665.845,
      "target": 4675.505,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T12:50:00Z",
      "outcome_time": "2026-01-19T13:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4665.845,
          "impulse_high": 4672.285,
          "fib_entry_level": "50%",
          "entry": 4669.0650000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.45,
              "high": 4670.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4668.292, planned_rr=3.0, touch=2026-01-19T12:50:00Z, outcome=sl_first",
      "entry": 4668.292,
      "stop": 4665.845,
      "target": 4675.634,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T12:50:00Z",
      "outcome_time": "2026-01-19T13:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4665.845,
          "impulse_high": 4672.285,
          "fib_entry_level": "62%",
          "entry": 4668.2922,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4666.45,
              "high": 4670.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4673.005, planned_rr=2.0, touch=2026-01-19T15:50:00Z, outcome=sl_first",
      "entry": 4673.005,
      "stop": 4669.73,
      "target": 4679.555,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T15:50:00Z",
      "outcome_time": "2026-01-19T17:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4669.73,
          "impulse_high": 4676.28,
          "fib_entry_level": "50%",
          "entry": 4673.004999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4671.485,
              "high": 4674.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4672.219, planned_rr=3.0, touch=2026-01-19T15:50:00Z, outcome=sl_first",
      "entry": 4672.219,
      "stop": 4669.73,
      "target": 4679.686,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T15:50:00Z",
      "outcome_time": "2026-01-19T17:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4669.73,
          "impulse_high": 4676.28,
          "fib_entry_level": "62%",
          "entry": 4672.219,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4671.485,
              "high": 4674.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4673.685, planned_rr=2.0, touch=2026-01-19T17:40:00Z, outcome=tp_first",
      "entry": 4673.685,
      "stop": 4670.99,
      "target": 4679.075,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-19T17:40:00Z",
      "outcome_time": "2026-01-19T18:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4670.99,
          "impulse_high": 4676.38,
          "fib_entry_level": "50%",
          "entry": 4673.6849999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4671.485,
              "high": 4674.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4673.038, planned_rr=3.0, touch=2026-01-19T17:35:00Z, outcome=tp_first",
      "entry": 4673.038,
      "stop": 4670.99,
      "target": 4679.183,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-19T17:35:00Z",
      "outcome_time": "2026-01-19T18:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.99,
          "impulse_high": 4676.38,
          "fib_entry_level": "62%",
          "entry": 4673.0382,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4671.485,
              "high": 4674.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-19T18-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-19T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4677.178, planned_rr=3.0, touch=2026-01-19T18:20:00Z, outcome=sl_first",
      "entry": 4677.178,
      "stop": 4675.2,
      "target": 4683.112,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-19T18:20:00Z",
      "outcome_time": "2026-01-19T18:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-19T18-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-19",
        "timestamp": "2026-01-19T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4675.2,
          "impulse_high": 4680.405,
          "fib_entry_level": "62%",
          "entry": 4677.1779,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4690.94,
            "PDL": 4646.135,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4662.997, planned_rr=2.0, touch=2026-01-20T00:35:00Z, outcome=tp_first",
      "entry": 4662.997,
      "stop": 4659.59,
      "target": 4669.812,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T00:35:00Z",
      "outcome_time": "2026-01-20T01:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4659.59,
          "impulse_high": 4666.405,
          "fib_entry_level": "50%",
          "entry": 4662.9974999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4660.38,
              "high": 4664.19,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4662.18, planned_rr=3.0, touch=2026-01-20T00:35:00Z, outcome=tp_first",
      "entry": 4662.18,
      "stop": 4659.59,
      "target": 4669.949,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-20T00:35:00Z",
      "outcome_time": "2026-01-20T01:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4659.59,
          "impulse_high": 4666.405,
          "fib_entry_level": "62%",
          "entry": 4662.1797,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4660.38,
              "high": 4664.19,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4668.786, planned_rr=3.0, touch=2026-01-20T02:20:00Z, outcome=tp_first",
      "entry": 4668.786,
      "stop": 4665.82,
      "target": 4677.684,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-20T02:20:00Z",
      "outcome_time": "2026-01-20T03:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4665.82,
          "impulse_high": 4673.625,
          "fib_entry_level": "62%",
          "entry": 4668.7859,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4709.41, planned_rr=3.0, touch=2026-01-20T05:50:00Z, outcome=tp_first",
      "entry": 4709.41,
      "stop": 4704.915,
      "target": 4722.897,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-20T05:50:00Z",
      "outcome_time": "2026-01-20T08:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4704.915,
          "impulse_high": 4716.745,
          "fib_entry_level": "62%",
          "entry": 4709.4104,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4720.398, planned_rr=2.0, touch=2026-01-20T08:05:00Z, outcome=tp_first",
      "entry": 4720.398,
      "stop": 4715.035,
      "target": 4731.123,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T08:05:00Z",
      "outcome_time": "2026-01-20T08:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4715.035,
          "impulse_high": 4725.76,
          "fib_entry_level": "50%",
          "entry": 4720.3975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4714.935,
              "high": 4722.845,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4719.11, planned_rr=3.0, touch=2026-01-20T08:05:00Z, outcome=tp_first",
      "entry": 4719.11,
      "stop": 4715.035,
      "target": 4731.337,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-20T08:05:00Z",
      "outcome_time": "2026-01-20T08:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4715.035,
          "impulse_high": 4725.76,
          "fib_entry_level": "62%",
          "entry": 4719.1105,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4714.935,
              "high": 4722.845,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4727.67, planned_rr=2.0, touch=2026-01-20T09:20:00Z, outcome=sl_first",
      "entry": 4727.67,
      "stop": 4721.315,
      "target": 4740.38,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-20T09:20:00Z",
      "outcome_time": "2026-01-20T09:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4721.315,
          "impulse_high": 4734.025,
          "fib_entry_level": "50%",
          "entry": 4727.67,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4724.215,
              "high": 4731.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4726.145, planned_rr=3.0, touch=2026-01-20T09:20:00Z, outcome=sl_first",
      "entry": 4726.145,
      "stop": 4721.315,
      "target": 4740.634,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-20T09:20:00Z",
      "outcome_time": "2026-01-20T09:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4721.315,
          "impulse_high": 4734.025,
          "fib_entry_level": "62%",
          "entry": 4726.1448,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4724.215,
              "high": 4731.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4729.173, planned_rr=2.0, touch=2026-01-20T11:35:00Z, outcome=sl_first",
      "entry": 4729.173,
      "stop": 4725.87,
      "target": 4735.778,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-20T11:35:00Z",
      "outcome_time": "2026-01-20T11:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4725.87,
          "impulse_high": 4732.475,
          "fib_entry_level": "50%",
          "entry": 4729.172500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4724.215,
              "high": 4731.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4728.38, planned_rr=3.0, touch=2026-01-20T11:35:00Z, outcome=sl_first",
      "entry": 4728.38,
      "stop": 4725.87,
      "target": 4735.91,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-20T11:35:00Z",
      "outcome_time": "2026-01-20T11:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4725.87,
          "impulse_high": 4732.475,
          "fib_entry_level": "62%",
          "entry": 4728.3799,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4724.215,
              "high": 4731.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T13-15-00Z_long_breaker_continuation",
      "timestamp": "2026-01-20T13:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4729.952, planned_rr=2.0, touch=2026-01-20T13:40:00Z, outcome=tp_first",
      "entry": 4729.952,
      "stop": 4716.005,
      "target": 4757.847,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T13:40:00Z",
      "outcome_time": "2026-01-20T17:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T13-15-00Z_long_breaker_continuation",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4716.005,
          "entry": 4729.952499999999,
          "stop": 4716.005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4729.24,
              "high": 4730.665,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4726.405,
              "high": 4727.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-01-20T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4729.952, planned_rr=2.0, touch=2026-01-20T13:40:00Z, outcome=tp_first",
      "entry": 4729.952,
      "stop": 4715.035,
      "target": 4759.787,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T13:40:00Z",
      "outcome_time": "2026-01-20T17:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T13-30-00Z_long_breaker_continuation",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4715.035,
          "entry": 4729.952499999999,
          "stop": 4715.035,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4729.24,
              "high": 4730.665,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4726.405,
              "high": 4727.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T13-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-20T13:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4729.952, planned_rr=2.0, touch=2026-01-20T13:40:00Z, outcome=tp_first",
      "entry": 4729.952,
      "stop": 4715.035,
      "target": 4759.787,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T13:40:00Z",
      "outcome_time": "2026-01-20T17:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T13-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4715.035,
          "entry": 4729.952499999999,
          "stop": 4715.035,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4729.24,
              "high": 4730.665,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4726.405,
              "high": 4727.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-20T13:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4729.92, planned_rr=2.0, touch=2026-01-20T13:40:00Z, outcome=tp_first",
      "entry": 4729.92,
      "stop": 4715.035,
      "target": 4759.69,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-20T13:40:00Z",
      "outcome_time": "2026-01-20T17:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T13-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4715.035,
          "entry": 4729.92,
          "stop": 4715.035,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4731.633, planned_rr=3.0, touch=2026-01-20T13:50:00Z, outcome=tp_first",
      "entry": 4731.633,
      "stop": 4727.4,
      "target": 4744.333,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-20T13:50:00Z",
      "outcome_time": "2026-01-20T14:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4727.4,
          "impulse_high": 4738.54,
          "fib_entry_level": "62%",
          "entry": 4731.6332,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4730.525,
              "high": 4732.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-20T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-20T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4744.321, planned_rr=3.0, touch=2026-01-20T14:20:00Z, outcome=sl_first",
      "entry": 4744.321,
      "stop": 4740.32,
      "target": 4756.326,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-20T14:20:00Z",
      "outcome_time": "2026-01-20T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-20T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-20",
        "timestamp": "2026-01-20T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4740.32,
          "impulse_high": 4750.85,
          "fib_entry_level": "62%",
          "entry": 4744.3214,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4766.4,
            "PDL": 4659.395,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4828.499, planned_rr=3.0, touch=2026-01-21T01:50:00Z, outcome=sl_first",
      "entry": 4828.499,
      "stop": 4818.82,
      "target": 4857.534,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T01:50:00Z",
      "outcome_time": "2026-01-21T02:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4818.82,
          "impulse_high": 4844.29,
          "fib_entry_level": "62%",
          "entry": 4828.4986,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4857.833, planned_rr=2.0, touch=2026-01-21T04:35:00Z, outcome=tp_first",
      "entry": 4857.833,
      "stop": 4849.89,
      "target": 4873.718,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-21T04:35:00Z",
      "outcome_time": "2026-01-21T05:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4849.89,
          "impulse_high": 4865.775,
          "fib_entry_level": "50%",
          "entry": 4857.8325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4854.225,
              "high": 4862.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4855.926, planned_rr=3.0, touch=2026-01-21T04:35:00Z, outcome=tp_first",
      "entry": 4855.926,
      "stop": 4849.89,
      "target": 4874.035,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-21T04:35:00Z",
      "outcome_time": "2026-01-21T05:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4849.89,
          "impulse_high": 4865.775,
          "fib_entry_level": "62%",
          "entry": 4855.9263,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4854.225,
              "high": 4862.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4877.153, planned_rr=3.0, touch=2026-01-21T06:20:00Z, outcome=sl_first",
      "entry": 4877.153,
      "stop": 4870.17,
      "target": 4898.1,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T06:20:00Z",
      "outcome_time": "2026-01-21T06:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4870.17,
          "impulse_high": 4888.545,
          "fib_entry_level": "62%",
          "entry": 4877.1525,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4841.743, planned_rr=2.0, touch=2026-01-21T07:20:00Z, outcome=sl_first",
      "entry": 4841.743,
      "stop": 4832.725,
      "target": 4859.778,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T07:20:00Z",
      "outcome_time": "2026-01-21T07:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4832.725,
          "impulse_high": 4850.76,
          "fib_entry_level": "50%",
          "entry": 4841.7425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4837.93,
              "high": 4846.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4839.578, planned_rr=3.0, touch=2026-01-21T07:20:00Z, outcome=sl_first",
      "entry": 4839.578,
      "stop": 4832.725,
      "target": 4860.138,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T07:20:00Z",
      "outcome_time": "2026-01-21T07:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4832.725,
          "impulse_high": 4850.76,
          "fib_entry_level": "62%",
          "entry": 4839.5783,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4837.93,
              "high": 4846.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T07-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-21T07:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4848.275, planned_rr=2.0, touch=2026-01-21T07:25:00Z, outcome=tp_first",
      "entry": 4848.275,
      "stop": 4832.725,
      "target": 4879.375,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-21T07:25:00Z",
      "outcome_time": "2026-01-21T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T07-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4832.725,
          "entry": 4848.275,
          "stop": 4832.725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4846.66,
              "high": 4849.89,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4837.93,
              "high": 4846.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T07-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-21T07:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4849.64, planned_rr=2.0, touch=2026-01-21T07:25:00Z, outcome=sl_first",
      "entry": 4849.64,
      "stop": 4832.725,
      "target": 4883.47,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T07:25:00Z",
      "outcome_time": "2026-01-21T15:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T07-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4832.725,
          "entry": 4849.64,
          "stop": 4832.725,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4865.246, planned_rr=3.0, touch=2026-01-21T09:20:00Z, outcome=sl_first",
      "entry": 4865.246,
      "stop": 4858.18,
      "target": 4886.444,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T09:20:00Z",
      "outcome_time": "2026-01-21T11:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4858.18,
          "impulse_high": 4876.775,
          "fib_entry_level": "62%",
          "entry": 4865.2461,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4871.538, planned_rr=3.0, touch=2026-01-21T13:35:00Z, outcome=sl_first",
      "entry": 4871.538,
      "stop": 4866.87,
      "target": 4885.543,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T13:35:00Z",
      "outcome_time": "2026-01-21T14:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4866.87,
          "impulse_high": 4879.155,
          "fib_entry_level": "62%",
          "entry": 4871.5383,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4861.71,
              "high": 4871.57,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4850.705, planned_rr=3.0, touch=2026-01-21T14:20:00Z, outcome=sl_first",
      "entry": 4850.705,
      "stop": 4842.13,
      "target": 4876.429,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-21T14:20:00Z",
      "outcome_time": "2026-01-21T15:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4842.13,
          "impulse_high": 4864.695,
          "fib_entry_level": "62%",
          "entry": 4850.7047,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T17-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4816.045, planned_rr=3.0, touch=2026-01-21T17:50:00Z, outcome=tp_first",
      "entry": 4816.045,
      "stop": 4808.825,
      "target": 4837.705,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-21T17:50:00Z",
      "outcome_time": "2026-01-21T18:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T17-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4808.825,
          "impulse_high": 4827.825,
          "fib_entry_level": "62%",
          "entry": 4816.045,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4808.987, planned_rr=2.0, touch=2026-01-21T20:35:00Z, outcome=tp_first",
      "entry": 4808.987,
      "stop": 4796.49,
      "target": 4833.982,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-21T20:35:00Z",
      "outcome_time": "2026-01-21T21:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4796.49,
          "impulse_high": 4821.485,
          "fib_entry_level": "50%",
          "entry": 4808.987499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4801.2,
              "high": 4816.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-21T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-21T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4805.988, planned_rr=3.0, touch=2026-01-21T20:35:00Z, outcome=tp_first",
      "entry": 4805.988,
      "stop": 4796.49,
      "target": 4834.482,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-21T20:35:00Z",
      "outcome_time": "2026-01-21T21:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-21T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-21",
        "timestamp": "2026-01-21T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4796.49,
          "impulse_high": 4821.485,
          "fib_entry_level": "62%",
          "entry": 4805.9881,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4801.2,
              "high": 4816.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4888.545,
            "PDL": 4755.075,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4827.558, planned_rr=3.0, touch=2026-01-22T12:20:00Z, outcome=sl_first",
      "entry": 4827.558,
      "stop": 4824.465,
      "target": 4836.838,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-22T12:20:00Z",
      "outcome_time": "2026-01-22T12:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4824.465,
          "impulse_high": 4832.605,
          "fib_entry_level": "62%",
          "entry": 4827.5581999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4820.314, planned_rr=3.0, touch=2026-01-22T13:05:00Z, outcome=tp_first",
      "entry": 4820.314,
      "stop": 4815.805,
      "target": 4833.84,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-22T13:05:00Z",
      "outcome_time": "2026-01-22T13:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4815.805,
          "impulse_high": 4827.67,
          "fib_entry_level": "62%",
          "entry": 4820.313700000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-00-00Z_long_breaker_continuation",
      "timestamp": "2026-01-22T13:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4832.73, planned_rr=2.0, touch=2026-01-22T13:20:00Z, outcome=sl_first",
      "entry": 4832.73,
      "stop": 4815.805,
      "target": 4866.58,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-22T13:20:00Z",
      "outcome_time": "2026-01-22T13:40:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-00-00Z_long_breaker_continuation",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4815.805,
          "entry": 4832.73,
          "stop": 4815.805,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4830.645,
              "high": 4834.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-22T13:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4832.73, planned_rr=2.0, touch=2026-01-22T13:20:00Z, outcome=sl_first",
      "entry": 4832.73,
      "stop": 4815.805,
      "target": 4866.58,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-22T13:20:00Z",
      "outcome_time": "2026-01-22T13:40:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4815.805,
          "entry": 4832.73,
          "stop": 4815.805,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4830.645,
              "high": 4834.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-01-22T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4832.73, planned_rr=2.0, touch=2026-01-22T14:30:00Z, outcome=tp_first",
      "entry": 4832.73,
      "stop": 4810.895,
      "target": 4876.4,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-22T14:30:00Z",
      "outcome_time": "2026-01-22T16:10:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-30-00Z_long_breaker_continuation",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4810.895,
          "entry": 4832.73,
          "stop": 4810.895,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4830.645,
              "high": 4834.815,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4840.8,
              "high": 4853.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-45-00Z_long_breaker_continuation",
      "timestamp": "2026-01-22T13:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4832.73, planned_rr=2.0, touch=2026-01-22T14:30:00Z, outcome=tp_first",
      "entry": 4832.73,
      "stop": 4810.74,
      "target": 4876.71,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-22T14:30:00Z",
      "outcome_time": "2026-01-22T16:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-45-00Z_long_breaker_continuation",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4810.74,
          "entry": 4832.73,
          "stop": 4810.74,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4830.645,
              "high": 4834.815,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4840.8,
              "high": 4853.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T13-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-22T13:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4832.73, planned_rr=2.0, touch=2026-01-22T14:30:00Z, outcome=tp_first",
      "entry": 4832.73,
      "stop": 4810.74,
      "target": 4876.71,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-22T14:30:00Z",
      "outcome_time": "2026-01-22T16:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T13-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4810.74,
          "entry": 4832.73,
          "stop": 4810.74,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4830.645,
              "high": 4834.815,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4840.8,
              "high": 4853.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4835.612, planned_rr=3.0, touch=2026-01-22T14:35:00Z, outcome=sl_first",
      "entry": 4835.612,
      "stop": 4828.115,
      "target": 4858.105,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-22T14:35:00Z",
      "outcome_time": "2026-01-22T15:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4828.115,
          "impulse_high": 4847.845,
          "fib_entry_level": "62%",
          "entry": 4835.6124,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4918.97, planned_rr=2.0, touch=2026-01-22T20:35:00Z, outcome=tp_first",
      "entry": 4918.97,
      "stop": 4911.505,
      "target": 4933.9,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-22T20:35:00Z",
      "outcome_time": "2026-01-22T21:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4911.505,
          "impulse_high": 4926.435,
          "fib_entry_level": "50%",
          "entry": 4918.97,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4913.665,
              "high": 4924.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4917.178, planned_rr=3.0, touch=2026-01-22T20:55:00Z, outcome=tp_first",
      "entry": 4917.178,
      "stop": 4911.505,
      "target": 4934.199,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-22T20:55:00Z",
      "outcome_time": "2026-01-22T21:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4911.505,
          "impulse_high": 4926.435,
          "fib_entry_level": "62%",
          "entry": 4917.1784,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4913.665,
              "high": 4924.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T21-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T21:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4932.427, planned_rr=2.0, touch=2026-01-22T23:30:00Z, outcome=tp_first",
      "entry": 4932.427,
      "stop": 4924.175,
      "target": 4948.932,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-22T23:30:00Z",
      "outcome_time": "2026-01-22T23:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T21-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T21:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4924.175,
          "impulse_high": 4940.68,
          "fib_entry_level": "50%",
          "entry": 4932.4275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4925.485,
              "high": 4935.5,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4949.7, planned_rr=2.0, touch=2026-01-22T23:50:00Z, outcome=sl_first",
      "entry": 4949.7,
      "stop": 4938.73,
      "target": 4971.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-22T23:50:00Z",
      "outcome_time": "2026-01-23T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4938.73,
          "impulse_high": 4960.67,
          "fib_entry_level": "50%",
          "entry": 4949.7,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4940.415,
              "high": 4950.815,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4947.58,
              "high": 4956.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-22T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-22T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4947.067, planned_rr=3.0, touch=2026-01-23T01:00:00Z, outcome=sl_first",
      "entry": 4947.067,
      "stop": 4938.73,
      "target": 4972.079,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T01:00:00Z",
      "outcome_time": "2026-01-23T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-22T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-22",
        "timestamp": "2026-01-22T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4938.73,
          "impulse_high": 4960.67,
          "fib_entry_level": "62%",
          "entry": 4947.0671999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4940.415,
              "high": 4950.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4940.885,
            "PDL": 4772.27,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4955.677, planned_rr=3.0, touch=2026-01-23T00:50:00Z, outcome=sl_first",
      "entry": 4955.677,
      "stop": 4949.36,
      "target": 4974.63,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T00:50:00Z",
      "outcome_time": "2026-01-23T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4949.36,
          "impulse_high": 4965.985,
          "fib_entry_level": "62%",
          "entry": 4955.6775,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4947.58,
              "high": 4956.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4916.59, planned_rr=3.0, touch=2026-01-23T08:35:00Z, outcome=sl_first",
      "entry": 4916.59,
      "stop": 4910.595,
      "target": 4934.573,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T08:35:00Z",
      "outcome_time": "2026-01-23T08:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4910.595,
          "impulse_high": 4926.37,
          "fib_entry_level": "62%",
          "entry": 4916.5895,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4926.458, planned_rr=2.0, touch=2026-01-23T13:20:00Z, outcome=tp_first",
      "entry": 4926.458,
      "stop": 4918.49,
      "target": 4942.393,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-23T13:20:00Z",
      "outcome_time": "2026-01-23T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4918.49,
          "impulse_high": 4934.425,
          "fib_entry_level": "50%",
          "entry": 4926.4575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4926.44,
              "high": 4930.565,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4924.545, planned_rr=3.0, touch=2026-01-23T13:20:00Z, outcome=tp_first",
      "entry": 4924.545,
      "stop": 4918.49,
      "target": 4942.711,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-23T13:20:00Z",
      "outcome_time": "2026-01-23T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4918.49,
          "impulse_high": 4934.425,
          "fib_entry_level": "62%",
          "entry": 4924.5453,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4921.11,
              "high": 4926.44,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4934.623, planned_rr=3.0, touch=2026-01-23T14:30:00Z, outcome=tp_first",
      "entry": 4934.623,
      "stop": 4930.68,
      "target": 4946.45,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-23T14:30:00Z",
      "outcome_time": "2026-01-23T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4930.68,
          "impulse_high": 4941.055,
          "fib_entry_level": "62%",
          "entry": 4934.6225,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4939.35, planned_rr=3.0, touch=2026-01-23T15:00:00Z, outcome=tp_first",
      "entry": 4939.35,
      "stop": 4932.89,
      "target": 4958.73,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-23T15:00:00Z",
      "outcome_time": "2026-01-23T15:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4932.89,
          "impulse_high": 4949.89,
          "fib_entry_level": "62%",
          "entry": 4939.35,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4947.2, planned_rr=2.0, touch=2026-01-23T15:15:00Z, outcome=tp_first",
      "entry": 4947.2,
      "stop": 4938.405,
      "target": 4964.79,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-23T15:15:00Z",
      "outcome_time": "2026-01-23T16:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4938.405,
          "impulse_high": 4955.995,
          "fib_entry_level": "50%",
          "entry": 4947.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4942.47,
              "high": 4954.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4945.089, planned_rr=3.0, touch=2026-01-23T15:15:00Z, outcome=tp_first",
      "entry": 4945.089,
      "stop": 4938.405,
      "target": 4965.142,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-23T15:15:00Z",
      "outcome_time": "2026-01-23T16:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4938.405,
          "impulse_high": 4955.995,
          "fib_entry_level": "62%",
          "entry": 4945.089199999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4942.47,
              "high": 4954.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4952.4, planned_rr=2.0, touch=2026-01-23T15:35:00Z, outcome=tp_first",
      "entry": 4952.4,
      "stop": 4943.745,
      "target": 4969.71,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-23T15:35:00Z",
      "outcome_time": "2026-01-23T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4943.745,
          "impulse_high": 4961.055,
          "fib_entry_level": "50%",
          "entry": 4952.4,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4942.47,
              "high": 4954.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4968.023, planned_rr=2.0, touch=2026-01-23T16:05:00Z, outcome=tp_first",
      "entry": 4968.023,
      "stop": 4959.155,
      "target": 4985.758,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-23T16:05:00Z",
      "outcome_time": "2026-01-23T16:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4959.155,
          "impulse_high": 4976.89,
          "fib_entry_level": "50%",
          "entry": 4968.0225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4963.475,
              "high": 4969.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4965.894, planned_rr=3.0, touch=2026-01-23T16:05:00Z, outcome=tp_first",
      "entry": 4965.894,
      "stop": 4959.155,
      "target": 4986.112,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-23T16:05:00Z",
      "outcome_time": "2026-01-23T16:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4959.155,
          "impulse_high": 4976.89,
          "fib_entry_level": "62%",
          "entry": 4965.8943,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4963.475,
              "high": 4969.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4978.045, planned_rr=2.0, touch=2026-01-23T16:20:00Z, outcome=sl_first",
      "entry": 4978.045,
      "stop": 4969.495,
      "target": 4995.145,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T16:20:00Z",
      "outcome_time": "2026-01-23T17:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4969.495,
          "impulse_high": 4986.595,
          "fib_entry_level": "50%",
          "entry": 4978.045,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4976.89,
              "high": 4978.985,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4975.993, planned_rr=3.0, touch=2026-01-23T16:45:00Z, outcome=sl_first",
      "entry": 4975.993,
      "stop": 4969.495,
      "target": 4995.487,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T16:45:00Z",
      "outcome_time": "2026-01-23T17:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4969.495,
          "impulse_high": 4986.595,
          "fib_entry_level": "62%",
          "entry": 4975.993,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-23T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-23T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4971.978, planned_rr=3.0, touch=2026-01-23T18:35:00Z, outcome=sl_first",
      "entry": 4971.978,
      "stop": 4965.355,
      "target": 4991.849,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-23T18:35:00Z",
      "outcome_time": "2026-01-23T18:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-23T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-23",
        "timestamp": "2026-01-23T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4965.355,
          "impulse_high": 4982.785,
          "fib_entry_level": "62%",
          "entry": 4971.9784,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-25T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-25T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5032.91, planned_rr=2.0, touch=2026-01-26T19:20:00Z, outcome=sl_first",
      "entry": 5032.91,
      "stop": 5025.27,
      "target": 5048.19,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T19:20:00Z",
      "outcome_time": "2026-01-26T19:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-25T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-25",
        "timestamp": "2026-01-25T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5025.27,
          "impulse_high": 5040.55,
          "fib_entry_level": "50%",
          "entry": 5032.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5032.11,
              "high": 5034.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-25T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-25T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5031.076, planned_rr=3.0, touch=2026-01-26T19:20:00Z, outcome=sl_first",
      "entry": 5031.076,
      "stop": 5025.27,
      "target": 5048.496,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T19:20:00Z",
      "outcome_time": "2026-01-26T19:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-25T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-25",
        "timestamp": "2026-01-25T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5025.27,
          "impulse_high": 5040.55,
          "fib_entry_level": "62%",
          "entry": 5031.0764,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4990.12,
            "PDL": 4899.795,
            "PWH": 4990.12,
            "PWL": 4646.135
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5047.278, planned_rr=2.0, touch=2026-01-26T19:00:00Z, outcome=ambiguous_same_bar",
      "entry": 5047.278,
      "stop": 5042.295,
      "target": 5057.243,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-26T19:00:00Z",
      "outcome_time": "2026-01-26T19:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5042.295,
          "impulse_high": 5052.26,
          "fib_entry_level": "50%",
          "entry": 5047.2775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5038.135,
              "high": 5051.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5046.082, planned_rr=3.0, touch=2026-01-26T19:00:00Z, outcome=ambiguous_same_bar",
      "entry": 5046.082,
      "stop": 5042.295,
      "target": 5057.442,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-01-26T19:00:00Z",
      "outcome_time": "2026-01-26T19:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5042.295,
          "impulse_high": 5052.26,
          "fib_entry_level": "62%",
          "entry": 5046.0817,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5038.135,
              "high": 5051.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5076.83, planned_rr=3.0, touch=2026-01-26T13:00:00Z, outcome=sl_first",
      "entry": 5076.83,
      "stop": 5071.415,
      "target": 5093.075,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T13:00:00Z",
      "outcome_time": "2026-01-26T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5071.415,
          "impulse_high": 5085.665,
          "fib_entry_level": "62%",
          "entry": 5076.83,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5078.905, planned_rr=3.0, touch=2026-01-26T11:15:00Z, outcome=sl_first",
      "entry": 5078.905,
      "stop": 5072.705,
      "target": 5097.504,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T11:15:00Z",
      "outcome_time": "2026-01-26T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5072.705,
          "impulse_high": 5089.02,
          "fib_entry_level": "62%",
          "entry": 5078.9047,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T05-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-26T05:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Long entry=5060.005, planned_rr=2.0, touch=2026-01-26T13:30:00Z, outcome=ambiguous_same_bar",
      "entry": 5060.005,
      "stop": 5055.14,
      "target": 5069.735,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-01-26T13:30:00Z",
      "outcome_time": "2026-01-26T13:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T05-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5055.14,
          "entry": 5060.005,
          "stop": 5055.14,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5065.422, planned_rr=3.0, touch=2026-01-26T13:30:00Z, outcome=sl_first",
      "entry": 5065.422,
      "stop": 5058.515,
      "target": 5086.141,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T13:30:00Z",
      "outcome_time": "2026-01-26T13:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5058.515,
          "impulse_high": 5076.69,
          "fib_entry_level": "62%",
          "entry": 5065.4215,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5081.512, planned_rr=3.0, touch=2026-01-26T11:15:00Z, outcome=sl_first",
      "entry": 5081.512,
      "stop": 5074.74,
      "target": 5101.826,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T11:15:00Z",
      "outcome_time": "2026-01-26T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5074.74,
          "impulse_high": 5092.56,
          "fib_entry_level": "62%",
          "entry": 5081.5116,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5080.959, planned_rr=3.0, touch=2026-01-26T11:15:00Z, outcome=sl_first",
      "entry": 5080.959,
      "stop": 5073.94,
      "target": 5102.014,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T11:15:00Z",
      "outcome_time": "2026-01-26T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5073.94,
          "impulse_high": 5092.41,
          "fib_entry_level": "62%",
          "entry": 5080.9586,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5070.98, planned_rr=3.0, touch=2026-01-26T16:25:00Z, outcome=tp_first",
      "entry": 5070.98,
      "stop": 5063.76,
      "target": 5092.64,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-26T16:25:00Z",
      "outcome_time": "2026-01-26T16:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5063.76,
          "impulse_high": 5082.76,
          "fib_entry_level": "62%",
          "entry": 5070.9800000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5086.857, planned_rr=3.0, touch=2026-01-26T14:50:00Z, outcome=sl_first",
      "entry": 5086.857,
      "stop": 5080.625,
      "target": 5105.553,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T14:50:00Z",
      "outcome_time": "2026-01-26T15:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5080.625,
          "impulse_high": 5097.025,
          "fib_entry_level": "62%",
          "entry": 5086.857,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5084.48, planned_rr=3.0, touch=2026-01-26T15:50:00Z, outcome=tp_first",
      "entry": 5084.48,
      "stop": 5077.76,
      "target": 5104.641,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-26T15:50:00Z",
      "outcome_time": "2026-01-26T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5077.76,
          "impulse_high": 5095.445,
          "fib_entry_level": "62%",
          "entry": 5084.4803,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5095.671, planned_rr=3.0, touch=2026-01-26T16:15:00Z, outcome=sl_first",
      "entry": 5095.671,
      "stop": 5089.745,
      "target": 5113.449,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T16:15:00Z",
      "outcome_time": "2026-01-26T16:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5089.745,
          "impulse_high": 5105.34,
          "fib_entry_level": "62%",
          "entry": 5095.6711,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5095.465,
              "high": 5097.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5083.61, planned_rr=3.0, touch=2026-01-26T16:50:00Z, outcome=tp_first",
      "entry": 5083.61,
      "stop": 5076.95,
      "target": 5103.588,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-26T16:50:00Z",
      "outcome_time": "2026-01-26T17:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5076.95,
          "impulse_high": 5094.475,
          "fib_entry_level": "62%",
          "entry": 5083.6095000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5089.772, planned_rr=3.0, touch=2026-01-26T17:35:00Z, outcome=sl_first",
      "entry": 5089.772,
      "stop": 5082.06,
      "target": 5112.908,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T17:35:00Z",
      "outcome_time": "2026-01-26T18:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5082.06,
          "impulse_high": 5102.355,
          "fib_entry_level": "62%",
          "entry": 5089.7721,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5040.132, planned_rr=2.0, touch=2026-01-26T20:05:00Z, outcome=sl_first",
      "entry": 5040.132,
      "stop": 5026.26,
      "target": 5067.877,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T20:05:00Z",
      "outcome_time": "2026-01-26T21:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5026.26,
          "impulse_high": 5054.005,
          "fib_entry_level": "50%",
          "entry": 5040.1325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5037.99,
              "high": 5040.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-26T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5036.803, planned_rr=3.0, touch=2026-01-26T20:05:00Z, outcome=sl_first",
      "entry": 5036.803,
      "stop": 5026.26,
      "target": 5068.432,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-26T20:05:00Z",
      "outcome_time": "2026-01-26T21:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-26",
        "timestamp": "2026-01-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5026.26,
          "impulse_high": 5054.005,
          "fib_entry_level": "62%",
          "entry": 5036.8031,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5111.51,
            "PDL": 4990.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5091.215, planned_rr=2.0, touch=2026-01-27T09:50:00Z, outcome=sl_first",
      "entry": 5091.215,
      "stop": 5082.78,
      "target": 5108.085,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-27T09:50:00Z",
      "outcome_time": "2026-01-27T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5082.78,
          "impulse_high": 5099.65,
          "fib_entry_level": "50%",
          "entry": 5091.215,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5086.175,
              "high": 5094.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5089.191, planned_rr=3.0, touch=2026-01-27T09:50:00Z, outcome=sl_first",
      "entry": 5089.191,
      "stop": 5082.78,
      "target": 5108.422,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-27T09:50:00Z",
      "outcome_time": "2026-01-27T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5082.78,
          "impulse_high": 5099.65,
          "fib_entry_level": "62%",
          "entry": 5089.1906,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5086.175,
              "high": 5094.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5083.022, planned_rr=3.0, touch=2026-01-27T12:55:00Z, outcome=sl_first",
      "entry": 5083.022,
      "stop": 5078.38,
      "target": 5096.947,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-27T12:55:00Z",
      "outcome_time": "2026-01-27T13:10:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5078.38,
          "impulse_high": 5090.595,
          "fib_entry_level": "62%",
          "entry": 5083.0217,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5067.911, planned_rr=3.0, touch=2026-01-27T14:35:00Z, outcome=sl_first",
      "entry": 5067.911,
      "stop": 5059.15,
      "target": 5094.194,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-27T14:35:00Z",
      "outcome_time": "2026-01-27T14:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5059.15,
          "impulse_high": 5082.205,
          "fib_entry_level": "62%",
          "entry": 5067.9109,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5162.448, planned_rr=2.0, touch=2026-01-27T20:50:00Z, outcome=tp_first",
      "entry": 5162.448,
      "stop": 5142.1,
      "target": 5203.142,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-27T20:50:00Z",
      "outcome_time": "2026-01-28T01:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5142.1,
          "impulse_high": 5182.795,
          "fib_entry_level": "50%",
          "entry": 5162.4475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5149.415,
              "high": 5171.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5157.564, planned_rr=3.0, touch=2026-01-27T20:50:00Z, outcome=tp_first",
      "entry": 5157.564,
      "stop": 5142.1,
      "target": 5203.956,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-27T20:50:00Z",
      "outcome_time": "2026-01-28T01:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5142.1,
          "impulse_high": 5182.795,
          "fib_entry_level": "62%",
          "entry": 5157.5641000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5149.415,
              "high": 5171.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-27T21-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-27T21:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5177.396, planned_rr=3.0, touch=2026-01-27T21:35:00Z, outcome=sl_first",
      "entry": 5177.396,
      "stop": 5171.535,
      "target": 5194.981,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-27T21:35:00Z",
      "outcome_time": "2026-01-27T23:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-27T21-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-27",
        "timestamp": "2026-01-27T21:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5171.535,
          "impulse_high": 5186.96,
          "fib_entry_level": "62%",
          "entry": 5177.3965,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5190.51,
            "PDL": 5013.875,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5236.92, planned_rr=3.0, touch=2026-01-28T03:05:00Z, outcome=sl_first",
      "entry": 5236.92,
      "stop": 5230.24,
      "target": 5256.962,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T03:05:00Z",
      "outcome_time": "2026-01-28T03:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5230.24,
          "impulse_high": 5247.82,
          "fib_entry_level": "62%",
          "entry": 5236.9204,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5283.589, planned_rr=3.0, touch=2026-01-28T08:45:00Z, outcome=sl_first",
      "entry": 5283.589,
      "stop": 5277.9,
      "target": 5300.654,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T08:45:00Z",
      "outcome_time": "2026-01-28T09:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5277.9,
          "impulse_high": 5292.87,
          "fib_entry_level": "62%",
          "entry": 5283.5886,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5271.649, planned_rr=3.0, touch=2026-01-28T10:35:00Z, outcome=sl_first",
      "entry": 5271.649,
      "stop": 5267.08,
      "target": 5285.358,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T10:35:00Z",
      "outcome_time": "2026-01-28T11:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5267.08,
          "impulse_high": 5279.105,
          "fib_entry_level": "62%",
          "entry": 5271.6494999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5265.904, planned_rr=3.0, touch=2026-01-28T12:35:00Z, outcome=tp_first",
      "entry": 5265.904,
      "stop": 5261.45,
      "target": 5279.264,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-28T12:35:00Z",
      "outcome_time": "2026-01-28T12:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5261.45,
          "impulse_high": 5273.17,
          "fib_entry_level": "62%",
          "entry": 5265.9036,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5270.773, planned_rr=3.0, touch=2026-01-28T12:50:00Z, outcome=tp_first",
      "entry": 5270.773,
      "stop": 5265.43,
      "target": 5286.801,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-28T12:50:00Z",
      "outcome_time": "2026-01-28T13:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5265.43,
          "impulse_high": 5279.49,
          "fib_entry_level": "62%",
          "entry": 5270.7728,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5263.189, planned_rr=3.0, touch=2026-01-28T14:35:00Z, outcome=sl_first",
      "entry": 5263.189,
      "stop": 5250.29,
      "target": 5301.886,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T14:35:00Z",
      "outcome_time": "2026-01-28T15:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5250.29,
          "impulse_high": 5284.235,
          "fib_entry_level": "62%",
          "entry": 5263.1891,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T15-00-00Z_long_breaker_continuation",
      "timestamp": "2026-01-28T15:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5290.922, planned_rr=2.0, touch=2026-01-28T15:05:00Z, outcome=sl_first",
      "entry": 5290.922,
      "stop": 5235.75,
      "target": 5401.267,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T15:05:00Z",
      "outcome_time": "2026-01-28T15:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T15-00-00Z_long_breaker_continuation",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5235.75,
          "entry": 5290.9225,
          "stop": 5235.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5289.315,
              "high": 5292.53,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 5276.35,
              "high": 5289.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5291.062, planned_rr=2.0, touch=2026-01-28T16:50:00Z, outcome=tp_first",
      "entry": 5291.062,
      "stop": 5281.795,
      "target": 5309.597,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-28T16:50:00Z",
      "outcome_time": "2026-01-28T18:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5281.795,
          "impulse_high": 5300.33,
          "fib_entry_level": "50%",
          "entry": 5291.0625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5289.315,
              "high": 5292.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5288.838, planned_rr=3.0, touch=2026-01-28T16:50:00Z, outcome=tp_first",
      "entry": 5288.838,
      "stop": 5281.795,
      "target": 5309.968,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-28T16:50:00Z",
      "outcome_time": "2026-01-28T18:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5281.795,
          "impulse_high": 5300.33,
          "fib_entry_level": "62%",
          "entry": 5288.8383,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5276.35,
              "high": 5289.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5367.785, planned_rr=3.0, touch=2026-01-28T20:35:00Z, outcome=tp_first",
      "entry": 5367.785,
      "stop": 5353.275,
      "target": 5411.316,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-28T20:35:00Z",
      "outcome_time": "2026-01-28T21:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5353.275,
          "impulse_high": 5391.46,
          "fib_entry_level": "62%",
          "entry": 5367.7853,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5453.92, planned_rr=2.0, touch=2026-01-28T23:05:00Z, outcome=sl_first",
      "entry": 5453.92,
      "stop": 5432.455,
      "target": 5496.85,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T23:05:00Z",
      "outcome_time": "2026-01-28T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5432.455,
          "impulse_high": 5475.385,
          "fib_entry_level": "50%",
          "entry": 5453.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5419.645,
              "high": 5472.345,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5448.768, planned_rr=3.0, touch=2026-01-28T23:05:00Z, outcome=sl_first",
      "entry": 5448.768,
      "stop": 5432.455,
      "target": 5497.709,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T23:05:00Z",
      "outcome_time": "2026-01-28T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5432.455,
          "impulse_high": 5475.385,
          "fib_entry_level": "62%",
          "entry": 5448.7684,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5419.645,
              "high": 5472.345,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-28T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-28T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5532.416, planned_rr=3.0, touch=2026-01-28T23:35:00Z, outcome=sl_first",
      "entry": 5532.416,
      "stop": 5489.63,
      "target": 5660.774,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-28T23:35:00Z",
      "outcome_time": "2026-01-28T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-28T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-28",
        "timestamp": "2026-01-28T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5489.63,
          "impulse_high": 5602.225,
          "fib_entry_level": "62%",
          "entry": 5532.4161,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.645,
            "PDL": 5157.21,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-29T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5524.42, planned_rr=3.0, touch=2026-01-29T01:35:00Z, outcome=sl_first",
      "entry": 5524.42,
      "stop": 5507.54,
      "target": 5575.058,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T01:35:00Z",
      "outcome_time": "2026-01-29T02:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5507.54,
          "impulse_high": 5551.96,
          "fib_entry_level": "62%",
          "entry": 5524.4196,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5513.97,
              "high": 5526.56,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-29T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5572.465, planned_rr=3.0, touch=2026-01-29T06:45:00Z, outcome=sl_first",
      "entry": 5572.465,
      "stop": 5562.515,
      "target": 5602.316,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T06:45:00Z",
      "outcome_time": "2026-01-29T06:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5562.515,
          "impulse_high": 5588.7,
          "fib_entry_level": "62%",
          "entry": 5572.4653,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5564.545,
              "high": 5574.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-29T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5490.321, planned_rr=3.0, touch=2026-01-29T10:55:00Z, outcome=sl_first",
      "entry": 5490.321,
      "stop": 5473.555,
      "target": 5540.617,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T10:55:00Z",
      "outcome_time": "2026-01-29T11:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5473.555,
          "impulse_high": 5517.675,
          "fib_entry_level": "62%",
          "entry": 5490.3206,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T08-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-01-29T08:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 5558.943,
      "stop": 5473.555,
      "target": 5729.717,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-01-29T08-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5473.555,
          "entry": 5558.9425,
          "stop": 5473.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5555.37,
              "high": 5562.515,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5564.545,
              "high": 5574.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T08-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-29T08:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5510.08, planned_rr=2.0, touch=2026-01-29T08:50:00Z, outcome=sl_first",
      "entry": 5510.08,
      "stop": 5473.555,
      "target": 5583.13,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T08:50:00Z",
      "outcome_time": "2026-01-29T11:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T08-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5473.555,
          "entry": 5510.08,
          "stop": 5473.555,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T11-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-29T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5507.09, planned_rr=2.0, touch=2026-01-29T11:10:00Z, outcome=sl_first",
      "entry": 5507.09,
      "stop": 5470.9,
      "target": 5579.47,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T11:10:00Z",
      "outcome_time": "2026-01-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T11-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5470.9,
          "entry": 5507.09,
          "stop": 5470.9,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-29T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5521.663, planned_rr=3.0, touch=2026-01-29T14:05:00Z, outcome=sl_first",
      "entry": 5521.663,
      "stop": 5510.74,
      "target": 5554.432,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T14:05:00Z",
      "outcome_time": "2026-01-29T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5510.74,
          "impulse_high": 5539.485,
          "fib_entry_level": "62%",
          "entry": 5521.6631,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-29T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-29T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5323.141, planned_rr=3.0, touch=2026-01-29T17:55:00Z, outcome=sl_first",
      "entry": 5323.141,
      "stop": 5295.295,
      "target": 5406.681,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-29T17:55:00Z",
      "outcome_time": "2026-01-29T19:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-29T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-29",
        "timestamp": "2026-01-29T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5295.295,
          "impulse_high": 5368.575,
          "fib_entry_level": "62%",
          "entry": 5323.1414,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5602.225,
            "PDL": 5097.215,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5328.157, planned_rr=3.0, touch=2026-01-30T01:45:00Z, outcome=sl_first",
      "entry": 5328.157,
      "stop": 5306.145,
      "target": 5394.191,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T01:45:00Z",
      "outcome_time": "2026-01-30T01:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5306.145,
          "impulse_high": 5364.07,
          "fib_entry_level": "62%",
          "entry": 5328.1565,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5174.041, planned_rr=3.0, touch=2026-01-30T02:35:00Z, outcome=sl_first",
      "entry": 5174.041,
      "stop": 5139.22,
      "target": 5278.505,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T02:35:00Z",
      "outcome_time": "2026-01-30T07:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5139.22,
          "impulse_high": 5230.855,
          "fib_entry_level": "62%",
          "entry": 5174.0413,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5158.934, planned_rr=3.0, touch=2026-01-30T07:50:00Z, outcome=sl_first",
      "entry": 5158.934,
      "stop": 5143.13,
      "target": 5206.347,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T07:50:00Z",
      "outcome_time": "2026-01-30T08:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5143.13,
          "impulse_high": 5184.72,
          "fib_entry_level": "62%",
          "entry": 5158.934200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5160.87, planned_rr=2.0, touch=2026-01-30T08:05:00Z, outcome=tp_first",
      "entry": 5160.87,
      "stop": 5181.115,
      "target": 5120.38,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T08:05:00Z",
      "outcome_time": "2026-01-30T08:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5140.625,
          "impulse_high": 5181.115,
          "fib_entry_level": "50%",
          "entry": 5160.87,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5133.32,
              "high": 5170.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5165.729, planned_rr=3.0, touch=2026-01-30T08:05:00Z, outcome=tp_first",
      "entry": 5165.729,
      "stop": 5181.115,
      "target": 5119.57,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T08:05:00Z",
      "outcome_time": "2026-01-30T08:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5140.625,
          "impulse_high": 5181.115,
          "fib_entry_level": "62%",
          "entry": 5165.7288,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5133.32,
              "high": 5170.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5104.735, planned_rr=2.0, touch=2026-01-30T08:40:00Z, outcome=tp_first",
      "entry": 5104.735,
      "stop": 5155.04,
      "target": 5004.125,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T08:40:00Z",
      "outcome_time": "2026-01-30T09:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5054.43,
          "impulse_high": 5155.04,
          "fib_entry_level": "50%",
          "entry": 5104.735000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5092.44,
              "high": 5129.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5116.808, planned_rr=3.0, touch=2026-01-30T08:45:00Z, outcome=tp_first",
      "entry": 5116.808,
      "stop": 5155.04,
      "target": 5002.113,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T08:45:00Z",
      "outcome_time": "2026-01-30T09:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5054.43,
          "impulse_high": 5155.04,
          "fib_entry_level": "62%",
          "entry": 5116.8082,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5092.44,
              "high": 5129.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5073.757, planned_rr=2.0, touch=2026-01-30T09:05:00Z, outcome=tp_first",
      "entry": 5073.757,
      "stop": 5133.05,
      "target": 4955.172,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T09:05:00Z",
      "outcome_time": "2026-01-30T09:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5014.465,
          "impulse_high": 5133.05,
          "fib_entry_level": "50%",
          "entry": 5073.7575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5070.455,
              "high": 5092.44,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5087.988, planned_rr=3.0, touch=2026-01-30T09:05:00Z, outcome=tp_first",
      "entry": 5087.988,
      "stop": 5133.05,
      "target": 4952.801,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T09:05:00Z",
      "outcome_time": "2026-01-30T09:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5014.465,
          "impulse_high": 5133.05,
          "fib_entry_level": "62%",
          "entry": 5087.987700000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5070.455,
              "high": 5092.44,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5033.945, planned_rr=3.0, touch=2026-01-30T09:35:00Z, outcome=sl_first",
      "entry": 5033.945,
      "stop": 5069.365,
      "target": 4927.686,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T09:35:00Z",
      "outcome_time": "2026-01-30T10:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4976.155,
          "impulse_high": 5069.365,
          "fib_entry_level": "62%",
          "entry": 5033.9452,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5085.743, planned_rr=2.0, touch=2026-01-30T12:50:00Z, outcome=tp_first",
      "entry": 5085.743,
      "stop": 5116.11,
      "target": 5025.008,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T12:50:00Z",
      "outcome_time": "2026-01-30T13:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5055.375,
          "impulse_high": 5116.11,
          "fib_entry_level": "50%",
          "entry": 5085.7425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.055,
              "high": 5100.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5093.031, planned_rr=3.0, touch=2026-01-30T12:50:00Z, outcome=tp_first",
      "entry": 5093.031,
      "stop": 5116.11,
      "target": 5023.793,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T12:50:00Z",
      "outcome_time": "2026-01-30T13:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5055.375,
          "impulse_high": 5116.11,
          "fib_entry_level": "62%",
          "entry": 5093.030699999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.055,
              "high": 5100.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5053.495, planned_rr=3.0, touch=2026-01-30T13:20:00Z, outcome=sl_first",
      "entry": 5053.495,
      "stop": 5077.61,
      "target": 4981.151,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T13:20:00Z",
      "outcome_time": "2026-01-30T14:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5014.15,
          "impulse_high": 5077.61,
          "fib_entry_level": "62%",
          "entry": 5053.495199999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5048.71,
              "high": 5054.055,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5046.3,
              "high": 5055.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5055.735, planned_rr=2.0, touch=2026-01-30T14:50:00Z, outcome=sl_first",
      "entry": 5055.735,
      "stop": 5097.4,
      "target": 4972.405,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T14:50:00Z",
      "outcome_time": "2026-01-30T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5014.07,
          "impulse_high": 5097.4,
          "fib_entry_level": "50%",
          "entry": 5055.735,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.055,
              "high": 5100.2,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5046.3,
              "high": 5055.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5065.735, planned_rr=3.0, touch=2026-01-30T14:50:00Z, outcome=sl_first",
      "entry": 5065.735,
      "stop": 5097.4,
      "target": 4970.738,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T14:50:00Z",
      "outcome_time": "2026-01-30T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5014.07,
          "impulse_high": 5097.4,
          "fib_entry_level": "62%",
          "entry": 5065.7346,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.055,
              "high": 5100.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5017.053, planned_rr=3.0, touch=2026-01-30T16:20:00Z, outcome=tp_first",
      "entry": 5017.053,
      "stop": 5035.665,
      "target": 4961.215,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T16:20:00Z",
      "outcome_time": "2026-01-30T16:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4986.685,
          "impulse_high": 5035.665,
          "fib_entry_level": "62%",
          "entry": 5017.0526,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4882.163, planned_rr=2.0, touch=2026-01-30T17:40:00Z, outcome=tp_first",
      "entry": 4882.163,
      "stop": 4925.705,
      "target": 4795.078,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T17:40:00Z",
      "outcome_time": "2026-01-30T18:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4838.62,
          "impulse_high": 4925.705,
          "fib_entry_level": "50%",
          "entry": 4882.1625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4879.07,
              "high": 4898.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4892.613, planned_rr=3.0, touch=2026-01-30T17:35:00Z, outcome=tp_first",
      "entry": 4892.613,
      "stop": 4925.705,
      "target": 4793.336,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-01-30T17:35:00Z",
      "outcome_time": "2026-01-30T18:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4838.62,
          "impulse_high": 4925.705,
          "fib_entry_level": "62%",
          "entry": 4892.6127,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4879.07,
              "high": 4898.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4851.238, planned_rr=3.0, touch=2026-01-30T18:05:00Z, outcome=sl_first",
      "entry": 4851.238,
      "stop": 4890.6,
      "target": 4733.151,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T18:05:00Z",
      "outcome_time": "2026-01-30T18:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4787.015,
          "impulse_high": 4890.6,
          "fib_entry_level": "62%",
          "entry": 4851.237700000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T18-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-01-30T18:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4808.695, planned_rr=2.0, touch=2026-01-30T18:05:00Z, outcome=tp_first",
      "entry": 4808.695,
      "stop": 4787.015,
      "target": 4852.055,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-01-30T18:05:00Z",
      "outcome_time": "2026-01-30T18:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T18-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4787.015,
          "entry": 4808.695,
          "stop": 4787.015,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4770.303, planned_rr=3.0, touch=2026-01-30T18:20:00Z, outcome=sl_first",
      "entry": 4770.303,
      "stop": 4818.445,
      "target": 4625.876,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T18:20:00Z",
      "outcome_time": "2026-01-30T18:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4691.755,
          "impulse_high": 4818.445,
          "fib_entry_level": "62%",
          "entry": 4770.3027999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4833.347, planned_rr=2.0, touch=2026-01-30T18:50:00Z, outcome=sl_first",
      "entry": 4833.347,
      "stop": 4772.9,
      "target": 4954.243,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T18:50:00Z",
      "outcome_time": "2026-02-01T23:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4772.9,
          "impulse_high": 4893.795,
          "fib_entry_level": "50%",
          "entry": 4833.3475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4787.695,
              "high": 4871.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-01-30T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-01-30T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4818.84, planned_rr=3.0, touch=2026-01-30T18:50:00Z, outcome=sl_first",
      "entry": 4818.84,
      "stop": 4772.9,
      "target": 4956.66,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-01-30T18:50:00Z",
      "outcome_time": "2026-02-01T23:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-01-30T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-01-30",
        "timestamp": "2026-01-30T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4772.9,
          "impulse_high": 4893.795,
          "fib_entry_level": "62%",
          "entry": 4818.840099999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4787.695,
              "high": 4871.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-01T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4773.53, planned_rr=2.0, touch=2026-02-01T23:10:00Z, outcome=sl_first",
      "entry": 4773.53,
      "stop": 4834.255,
      "target": 4652.08,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-01T23:10:00Z",
      "outcome_time": "2026-02-02T00:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-01",
        "timestamp": "2026-02-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4712.805,
          "impulse_high": 4834.255,
          "fib_entry_level": "50%",
          "entry": 4773.530000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4759.385,
              "high": 4857.56,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-01T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4788.104, planned_rr=3.0, touch=2026-02-01T23:10:00Z, outcome=sl_first",
      "entry": 4788.104,
      "stop": 4834.255,
      "target": 4649.651,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-01T23:10:00Z",
      "outcome_time": "2026-02-02T00:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-01",
        "timestamp": "2026-02-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4712.805,
          "impulse_high": 4834.255,
          "fib_entry_level": "62%",
          "entry": 4788.104,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4759.385,
              "high": 4857.56,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5451.16,
            "PDL": 4679.51,
            "PWH": 5602.225,
            "PWL": 4679.51
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4708.959, planned_rr=3.0, touch=2026-02-02T01:05:00Z, outcome=tp_first",
      "entry": 4708.959,
      "stop": 4785.045,
      "target": 4480.703,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-02T01:05:00Z",
      "outcome_time": "2026-02-02T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4584.82,
          "impulse_high": 4785.045,
          "fib_entry_level": "62%",
          "entry": 4708.9595,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4616.08, planned_rr=2.0, touch=2026-02-02T05:35:00Z, outcome=tp_first",
      "entry": 4616.08,
      "stop": 4658.99,
      "target": 4530.26,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-02T05:35:00Z",
      "outcome_time": "2026-02-02T05:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4573.17,
          "impulse_high": 4658.99,
          "fib_entry_level": "50%",
          "entry": 4616.08,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4579.55,
              "high": 4649.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4626.378, planned_rr=3.0, touch=2026-02-02T05:35:00Z, outcome=tp_first",
      "entry": 4626.378,
      "stop": 4658.99,
      "target": 4528.544,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-02T05:35:00Z",
      "outcome_time": "2026-02-02T05:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4573.17,
          "impulse_high": 4658.99,
          "fib_entry_level": "62%",
          "entry": 4626.3784,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4579.55,
              "high": 4649.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4505.664, planned_rr=3.0, touch=2026-02-02T06:20:00Z, outcome=sl_first",
      "entry": 4505.664,
      "stop": 4549.9,
      "target": 4372.957,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T06:20:00Z",
      "outcome_time": "2026-02-02T07:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4433.49,
          "impulse_high": 4549.9,
          "fib_entry_level": "62%",
          "entry": 4505.664199999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4501.135,
              "high": 4520.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4700.86, planned_rr=2.0, touch=2026-02-02T10:20:00Z, outcome=sl_first",
      "entry": 4700.86,
      "stop": 4731.165,
      "target": 4640.25,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T10:20:00Z",
      "outcome_time": "2026-02-02T11:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4670.555,
          "impulse_high": 4731.165,
          "fib_entry_level": "50%",
          "entry": 4700.860000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4698.615,
              "high": 4704.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4708.133, planned_rr=3.0, touch=2026-02-02T10:20:00Z, outcome=sl_first",
      "entry": 4708.133,
      "stop": 4731.165,
      "target": 4639.038,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T10:20:00Z",
      "outcome_time": "2026-02-02T11:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.555,
          "impulse_high": 4731.165,
          "fib_entry_level": "62%",
          "entry": 4708.1332,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4769.206, planned_rr=3.0, touch=2026-02-02T14:35:00Z, outcome=sl_first",
      "entry": 4769.206,
      "stop": 4794.185,
      "target": 4694.268,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T14:35:00Z",
      "outcome_time": "2026-02-02T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4728.45,
          "impulse_high": 4794.185,
          "fib_entry_level": "62%",
          "entry": 4769.2057,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4714.328, planned_rr=3.0, touch=2026-02-02T13:35:00Z, outcome=sl_first",
      "entry": 4714.328,
      "stop": 4741.945,
      "target": 4631.479,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T13:35:00Z",
      "outcome_time": "2026-02-02T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4669.27,
          "impulse_high": 4741.945,
          "fib_entry_level": "62%",
          "entry": 4714.3285,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4739.258, planned_rr=3.0, touch=2026-02-02T14:50:00Z, outcome=tp_first",
      "entry": 4739.258,
      "stop": 4763.055,
      "target": 4667.865,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-02T14:50:00Z",
      "outcome_time": "2026-02-02T15:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4700.43,
          "impulse_high": 4763.055,
          "fib_entry_level": "62%",
          "entry": 4739.257500000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-02T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-02T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4655.012, planned_rr=3.0, touch=2026-02-02T15:50:00Z, outcome=sl_first",
      "entry": 4655.012,
      "stop": 4678.12,
      "target": 4585.689,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-02T15:50:00Z",
      "outcome_time": "2026-02-02T16:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-02T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-02",
        "timestamp": "2026-02-02T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4617.31,
          "impulse_high": 4678.12,
          "fib_entry_level": "62%",
          "entry": 4655.0122,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4884.56,
            "PDL": 4402.38,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4808.422, planned_rr=2.0, touch=2026-02-03T00:20:00Z, outcome=sl_first",
      "entry": 4808.422,
      "stop": 4787.19,
      "target": 4850.887,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T00:20:00Z",
      "outcome_time": "2026-02-03T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4787.19,
          "impulse_high": 4829.655,
          "fib_entry_level": "50%",
          "entry": 4808.4225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4797.17,
              "high": 4813.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4803.327, planned_rr=3.0, touch=2026-02-03T00:20:00Z, outcome=sl_first",
      "entry": 4803.327,
      "stop": 4787.19,
      "target": 4851.737,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T00:20:00Z",
      "outcome_time": "2026-02-03T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4787.19,
          "impulse_high": 4829.655,
          "fib_entry_level": "62%",
          "entry": 4803.3267,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4797.17,
              "high": 4813.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4807.328, planned_rr=3.0, touch=2026-02-03T00:50:00Z, outcome=sl_first",
      "entry": 4807.328,
      "stop": 4827.74,
      "target": 4746.093,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T00:50:00Z",
      "outcome_time": "2026-02-03T01:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4774.025,
          "impulse_high": 4827.74,
          "fib_entry_level": "62%",
          "entry": 4807.3283,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4802.08,
              "high": 4820.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4798.427, planned_rr=2.0, touch=2026-02-03T01:05:00Z, outcome=sl_first",
      "entry": 4798.427,
      "stop": 4766.29,
      "target": 4862.702,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T01:05:00Z",
      "outcome_time": "2026-02-03T02:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4766.29,
          "impulse_high": 4830.565,
          "fib_entry_level": "50%",
          "entry": 4798.4275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4797.17,
              "high": 4813.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4790.715, planned_rr=3.0, touch=2026-02-03T01:05:00Z, outcome=sl_first",
      "entry": 4790.715,
      "stop": 4766.29,
      "target": 4863.988,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T01:05:00Z",
      "outcome_time": "2026-02-03T02:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4766.29,
          "impulse_high": 4830.565,
          "fib_entry_level": "62%",
          "entry": 4790.7145,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4815.965, planned_rr=2.0, touch=2026-02-03T02:05:00Z, outcome=tp_first",
      "entry": 4815.965,
      "stop": 4842.045,
      "target": 4763.805,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-03T02:05:00Z",
      "outcome_time": "2026-02-03T02:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4789.885,
          "impulse_high": 4842.045,
          "fib_entry_level": "50%",
          "entry": 4815.965,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4802.08,
              "high": 4820.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4822.224, planned_rr=3.0, touch=2026-02-03T02:05:00Z, outcome=tp_first",
      "entry": 4822.224,
      "stop": 4842.045,
      "target": 4762.762,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-03T02:05:00Z",
      "outcome_time": "2026-02-03T02:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4789.885,
          "impulse_high": 4842.045,
          "fib_entry_level": "62%",
          "entry": 4822.224200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4925.167, planned_rr=2.0, touch=2026-02-03T08:55:00Z, outcome=tp_first",
      "entry": 4925.167,
      "stop": 4938.925,
      "target": 4897.652,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-03T08:55:00Z",
      "outcome_time": "2026-02-03T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4911.41,
          "impulse_high": 4938.925,
          "fib_entry_level": "50%",
          "entry": 4925.1675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4924.035,
              "high": 4930.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4928.469, planned_rr=3.0, touch=2026-02-03T08:55:00Z, outcome=tp_first",
      "entry": 4928.469,
      "stop": 4938.925,
      "target": 4897.102,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-03T08:55:00Z",
      "outcome_time": "2026-02-03T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4911.41,
          "impulse_high": 4938.925,
          "fib_entry_level": "62%",
          "entry": 4928.4693,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4924.035,
              "high": 4930.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4906.617, planned_rr=3.0, touch=2026-02-03T09:20:00Z, outcome=sl_first",
      "entry": 4906.617,
      "stop": 4916.575,
      "target": 4876.743,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T09:20:00Z",
      "outcome_time": "2026-02-03T09:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4890.37,
          "impulse_high": 4916.575,
          "fib_entry_level": "62%",
          "entry": 4906.6170999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4903.555, planned_rr=2.0, touch=2026-02-03T09:35:00Z, outcome=sl_first",
      "entry": 4903.555,
      "stop": 4884.625,
      "target": 4941.415,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T09:35:00Z",
      "outcome_time": "2026-02-03T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4884.625,
          "impulse_high": 4922.485,
          "fib_entry_level": "50%",
          "entry": 4903.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4901.765,
              "high": 4912.91,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4899.012, planned_rr=3.0, touch=2026-02-03T09:35:00Z, outcome=sl_first",
      "entry": 4899.012,
      "stop": 4884.625,
      "target": 4942.172,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T09:35:00Z",
      "outcome_time": "2026-02-03T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4884.625,
          "impulse_high": 4922.485,
          "fib_entry_level": "62%",
          "entry": 4899.0118,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T09-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-03T09:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4907.337, planned_rr=2.0, touch=2026-02-03T09:35:00Z, outcome=sl_first",
      "entry": 4907.337,
      "stop": 4884.625,
      "target": 4952.762,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T09:35:00Z",
      "outcome_time": "2026-02-03T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T09-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4884.625,
          "entry": 4907.3375,
          "stop": 4884.625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4901.765,
              "high": 4912.91,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T09-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-03T09:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4921.515, planned_rr=2.0, touch=2026-02-03T09:40:00Z, outcome=sl_first",
      "entry": 4921.515,
      "stop": 4884.625,
      "target": 4995.295,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T09:40:00Z",
      "outcome_time": "2026-02-03T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T09-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4884.625,
          "entry": 4921.515,
          "stop": 4884.625,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4909.193, planned_rr=2.0, touch=2026-02-03T12:20:00Z, outcome=sl_first",
      "entry": 4909.193,
      "stop": 4926.115,
      "target": 4875.348,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T12:20:00Z",
      "outcome_time": "2026-02-03T13:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4892.27,
          "impulse_high": 4926.115,
          "fib_entry_level": "50%",
          "entry": 4909.1925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4908.005,
              "high": 4924.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4913.254, planned_rr=3.0, touch=2026-02-03T12:20:00Z, outcome=sl_first",
      "entry": 4913.254,
      "stop": 4926.115,
      "target": 4874.671,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T12:20:00Z",
      "outcome_time": "2026-02-03T13:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4892.27,
          "impulse_high": 4926.115,
          "fib_entry_level": "62%",
          "entry": 4913.2539,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4908.005,
              "high": 4924.035,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4912.72,
              "high": 4913.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4921.538, planned_rr=3.0, touch=2026-02-03T15:05:00Z, outcome=tp_first",
      "entry": 4921.538,
      "stop": 4904.805,
      "target": 4971.738,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-03T15:05:00Z",
      "outcome_time": "2026-02-03T16:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4904.805,
          "impulse_high": 4948.84,
          "fib_entry_level": "62%",
          "entry": 4921.5383,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4961.105, planned_rr=2.0, touch=2026-02-03T16:50:00Z, outcome=sl_first",
      "entry": 4961.105,
      "stop": 4941.45,
      "target": 5000.415,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T16:50:00Z",
      "outcome_time": "2026-02-03T17:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4941.45,
          "impulse_high": 4980.76,
          "fib_entry_level": "50%",
          "entry": 4961.105,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4946.13,
              "high": 4964.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4956.388, planned_rr=3.0, touch=2026-02-03T16:50:00Z, outcome=sl_first",
      "entry": 4956.388,
      "stop": 4941.45,
      "target": 5001.201,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T16:50:00Z",
      "outcome_time": "2026-02-03T17:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4941.45,
          "impulse_high": 4980.76,
          "fib_entry_level": "62%",
          "entry": 4956.3878,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4946.13,
              "high": 4964.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4967.65, planned_rr=2.0, touch=2026-02-03T16:50:00Z, outcome=tp_first",
      "entry": 4967.65,
      "stop": 4983.47,
      "target": 4936.01,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-03T16:50:00Z",
      "outcome_time": "2026-02-03T17:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4951.83,
          "impulse_high": 4983.47,
          "fib_entry_level": "50%",
          "entry": 4967.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4937.27,
              "high": 4970.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4939.205, planned_rr=2.0, touch=2026-02-03T17:40:00Z, outcome=tp_first",
      "entry": 4939.205,
      "stop": 4964.845,
      "target": 4887.925,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-03T17:40:00Z",
      "outcome_time": "2026-02-03T18:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4913.565,
          "impulse_high": 4964.845,
          "fib_entry_level": "50%",
          "entry": 4939.205,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4937.27,
              "high": 4970.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4945.359, planned_rr=3.0, touch=2026-02-03T17:40:00Z, outcome=tp_first",
      "entry": 4945.359,
      "stop": 4964.845,
      "target": 4886.899,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-03T17:40:00Z",
      "outcome_time": "2026-02-03T18:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4913.565,
          "impulse_high": 4964.845,
          "fib_entry_level": "62%",
          "entry": 4945.3586,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4937.27,
              "high": 4970.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4931.933, planned_rr=3.0, touch=2026-02-03T18:20:00Z, outcome=tp_first",
      "entry": 4931.933,
      "stop": 4948.545,
      "target": 4882.098,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-03T18:20:00Z",
      "outcome_time": "2026-02-03T19:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4904.83,
          "impulse_high": 4948.545,
          "fib_entry_level": "62%",
          "entry": 4931.9333,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-03T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-03T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4940.539, planned_rr=3.0, touch=2026-02-03T23:05:00Z, outcome=sl_first",
      "entry": 4940.539,
      "stop": 4959.765,
      "target": 4882.861,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-03T23:05:00Z",
      "outcome_time": "2026-02-04T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-03T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-03",
        "timestamp": "2026-02-03T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4909.17,
          "impulse_high": 4959.765,
          "fib_entry_level": "62%",
          "entry": 4940.5389000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4993.835,
            "PDL": 4695.53,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4998.265, planned_rr=3.0, touch=2026-02-04T00:50:00Z, outcome=sl_first",
      "entry": 4998.265,
      "stop": 4987.07,
      "target": 5031.849,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T00:50:00Z",
      "outcome_time": "2026-02-04T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4987.07,
          "impulse_high": 5016.53,
          "fib_entry_level": "62%",
          "entry": 4998.2648,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5019.363, planned_rr=2.0, touch=2026-02-04T01:05:00Z, outcome=tp_first",
      "entry": 5019.363,
      "stop": 4985.05,
      "target": 5087.988,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-04T01:05:00Z",
      "outcome_time": "2026-02-04T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4985.05,
          "impulse_high": 5053.675,
          "fib_entry_level": "50%",
          "entry": 5019.3625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5016.53,
              "high": 5031.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5011.128, planned_rr=3.0, touch=2026-02-04T01:35:00Z, outcome=tp_first",
      "entry": 5011.128,
      "stop": 4985.05,
      "target": 5089.36,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-04T01:35:00Z",
      "outcome_time": "2026-02-04T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4985.05,
          "impulse_high": 5053.675,
          "fib_entry_level": "62%",
          "entry": 5011.1275000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5069.512, planned_rr=2.0, touch=2026-02-04T06:05:00Z, outcome=sl_first",
      "entry": 5069.512,
      "stop": 5083.17,
      "target": 5042.197,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T06:05:00Z",
      "outcome_time": "2026-02-04T07:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5055.855,
          "impulse_high": 5083.17,
          "fib_entry_level": "50%",
          "entry": 5069.5125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.39,
              "high": 5077.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5072.79, planned_rr=3.0, touch=2026-02-04T06:05:00Z, outcome=sl_first",
      "entry": 5072.79,
      "stop": 5083.17,
      "target": 5041.651,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T06:05:00Z",
      "outcome_time": "2026-02-04T07:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5055.855,
          "impulse_high": 5083.17,
          "fib_entry_level": "62%",
          "entry": 5072.7903,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.39,
              "high": 5077.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5060.359, planned_rr=3.0, touch=2026-02-04T09:15:00Z, outcome=sl_first",
      "entry": 5060.359,
      "stop": 5053.855,
      "target": 5079.87,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T09:15:00Z",
      "outcome_time": "2026-02-04T09:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5053.855,
          "impulse_high": 5070.97,
          "fib_entry_level": "62%",
          "entry": 5060.3587,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5055.075,
              "high": 5061.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5073.083, planned_rr=2.0, touch=2026-02-04T07:20:00Z, outcome=sl_first",
      "entry": 5073.083,
      "stop": 5082.93,
      "target": 5053.388,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T07:20:00Z",
      "outcome_time": "2026-02-04T07:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5063.235,
          "impulse_high": 5082.93,
          "fib_entry_level": "50%",
          "entry": 5073.0825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.39,
              "high": 5077.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5075.446, planned_rr=3.0, touch=2026-02-04T07:20:00Z, outcome=sl_first",
      "entry": 5075.446,
      "stop": 5082.93,
      "target": 5052.994,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T07:20:00Z",
      "outcome_time": "2026-02-04T07:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5063.235,
          "impulse_high": 5082.93,
          "fib_entry_level": "62%",
          "entry": 5075.4459,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.39,
              "high": 5077.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5072.82, planned_rr=3.0, touch=2026-02-04T07:20:00Z, outcome=sl_first",
      "entry": 5072.82,
      "stop": 5062.505,
      "target": 5103.765,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T07:20:00Z",
      "outcome_time": "2026-02-04T09:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5062.505,
          "impulse_high": 5089.65,
          "fib_entry_level": "62%",
          "entry": 5072.8201,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5050.867, planned_rr=3.0, touch=2026-02-04T10:35:00Z, outcome=sl_first",
      "entry": 5050.867,
      "stop": 5044.27,
      "target": 5070.657,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T10:35:00Z",
      "outcome_time": "2026-02-04T11:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5044.27,
          "impulse_high": 5061.63,
          "fib_entry_level": "62%",
          "entry": 5050.866800000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5032.748, planned_rr=3.0, touch=2026-02-04T11:30:00Z, outcome=sl_first",
      "entry": 5032.748,
      "stop": 5044.38,
      "target": 4997.853,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T11:30:00Z",
      "outcome_time": "2026-02-04T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5013.77,
          "impulse_high": 5044.38,
          "fib_entry_level": "62%",
          "entry": 5032.7482,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5047.335, planned_rr=2.0, touch=2026-02-04T12:50:00Z, outcome=tp_first",
      "entry": 5047.335,
      "stop": 5058.175,
      "target": 5025.655,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-04T12:50:00Z",
      "outcome_time": "2026-02-04T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5036.495,
          "impulse_high": 5058.175,
          "fib_entry_level": "50%",
          "entry": 5047.335,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5046.235,
              "high": 5047.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5049.937, planned_rr=3.0, touch=2026-02-04T12:50:00Z, outcome=tp_first",
      "entry": 5049.937,
      "stop": 5058.175,
      "target": 5025.221,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-04T12:50:00Z",
      "outcome_time": "2026-02-04T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5036.495,
          "impulse_high": 5058.175,
          "fib_entry_level": "62%",
          "entry": 5049.9366,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5039.485, planned_rr=3.0, touch=2026-02-04T13:20:00Z, outcome=sl_first",
      "entry": 5039.485,
      "stop": 5030.325,
      "target": 5066.965,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T13:20:00Z",
      "outcome_time": "2026-02-04T14:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5030.325,
          "impulse_high": 5054.43,
          "fib_entry_level": "62%",
          "entry": 5039.4849,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5046.242, planned_rr=3.0, touch=2026-02-04T14:05:00Z, outcome=sl_first",
      "entry": 5046.242,
      "stop": 5035.52,
      "target": 5078.407,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T14:05:00Z",
      "outcome_time": "2026-02-04T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5035.52,
          "impulse_high": 5063.735,
          "fib_entry_level": "62%",
          "entry": 5046.2417000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T13-45-00Z_short_breaker_continuation",
      "timestamp": "2026-02-04T13:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=5041.368, planned_rr=2.0, touch=2026-02-04T14:05:00Z, outcome=tp_first",
      "entry": 5041.368,
      "stop": 5063.735,
      "target": 4996.633,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-04T14:05:00Z",
      "outcome_time": "2026-02-04T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T13-45-00Z_short_breaker_continuation",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5063.735,
          "entry": 5041.3675,
          "stop": 5063.735,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5040.23,
              "high": 5042.505,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5046.235,
              "high": 5047.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T13-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-04T13:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5054.185, planned_rr=2.0, touch=2026-02-04T13:50:00Z, outcome=sl_first",
      "entry": 5054.185,
      "stop": 5063.735,
      "target": 5035.085,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-04T13:50:00Z",
      "outcome_time": "2026-02-04T13:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T13-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5063.735,
          "entry": 5054.185,
          "stop": 5063.735,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5002.648, planned_rr=2.0, touch=2026-02-04T14:35:00Z, outcome=tp_first",
      "entry": 5002.648,
      "stop": 5038.29,
      "target": 4931.363,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-04T14:35:00Z",
      "outcome_time": "2026-02-04T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4967.005,
          "impulse_high": 5038.29,
          "fib_entry_level": "50%",
          "entry": 5002.6475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4972.53,
              "high": 5008.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5011.202, planned_rr=3.0, touch=2026-02-04T14:35:00Z, outcome=tp_first",
      "entry": 5011.202,
      "stop": 5038.29,
      "target": 4929.937,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-04T14:35:00Z",
      "outcome_time": "2026-02-04T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4967.005,
          "impulse_high": 5038.29,
          "fib_entry_level": "62%",
          "entry": 5011.2017,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4935.045, planned_rr=3.0, touch=2026-02-04T15:50:00Z, outcome=tp_first",
      "entry": 4935.045,
      "stop": 4950.515,
      "target": 4888.636,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-04T15:50:00Z",
      "outcome_time": "2026-02-04T16:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4909.805,
          "impulse_high": 4950.515,
          "fib_entry_level": "62%",
          "entry": 4935.0452000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-04T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4919.755, planned_rr=3.0, touch=2026-02-04T16:35:00Z, outcome=tp_first",
      "entry": 4919.755,
      "stop": 4934.845,
      "target": 4874.486,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-04T16:35:00Z",
      "outcome_time": "2026-02-04T16:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4895.135,
          "impulse_high": 4934.845,
          "fib_entry_level": "62%",
          "entry": 4919.7552000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-04T20-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-04T20:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4985.84, planned_rr=2.0, touch=2026-02-05T01:10:00Z, outcome=sl_first",
      "entry": 4985.84,
      "stop": 4914.245,
      "target": 5129.03,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T01:10:00Z",
      "outcome_time": "2026-02-05T02:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-04T20-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-04",
        "timestamp": "2026-02-04T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4914.245,
          "entry": 4985.84,
          "stop": 4914.245,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4971.18,
              "high": 5000.5,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5091.93,
            "PDL": 4848.405,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4939.576, planned_rr=3.0, touch=2026-02-05T02:05:00Z, outcome=tp_first",
      "entry": 4939.576,
      "stop": 4962.33,
      "target": 4871.312,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-05T02:05:00Z",
      "outcome_time": "2026-02-05T02:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4902.45,
          "impulse_high": 4962.33,
          "fib_entry_level": "62%",
          "entry": 4939.5756,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4863.783, planned_rr=3.0, touch=2026-02-05T03:20:00Z, outcome=sl_first",
      "entry": 4863.783,
      "stop": 4899.21,
      "target": 4757.5,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T03:20:00Z",
      "outcome_time": "2026-02-05T05:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4805.98,
          "impulse_high": 4899.21,
          "fib_entry_level": "62%",
          "entry": 4863.7826,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4858.475,
              "high": 4895.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T08-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-02-05T08:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4894.108, planned_rr=2.0, touch=2026-02-05T09:00:00Z, outcome=tp_first",
      "entry": 4894.108,
      "stop": 4943.735,
      "target": 4794.853,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-05T09:00:00Z",
      "outcome_time": "2026-02-05T20:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T08-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4943.735,
          "entry": 4894.1075,
          "stop": 4943.735,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4887.315,
              "high": 4900.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4888.377, planned_rr=2.0, touch=2026-02-05T09:05:00Z, outcome=tp_first",
      "entry": 4888.377,
      "stop": 4914.15,
      "target": 4836.832,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-05T09:05:00Z",
      "outcome_time": "2026-02-05T12:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4862.605,
          "impulse_high": 4914.15,
          "fib_entry_level": "50%",
          "entry": 4888.3775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4887.315,
              "high": 4900.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4894.563, planned_rr=3.0, touch=2026-02-05T11:20:00Z, outcome=tp_first",
      "entry": 4894.563,
      "stop": 4914.15,
      "target": 4835.802,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-05T11:20:00Z",
      "outcome_time": "2026-02-05T12:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4862.605,
          "impulse_high": 4914.15,
          "fib_entry_level": "62%",
          "entry": 4894.5629,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4887.315,
              "high": 4900.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4877.567, planned_rr=3.0, touch=2026-02-05T09:50:00Z, outcome=sl_first",
      "entry": 4877.567,
      "stop": 4894.525,
      "target": 4826.695,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T09:50:00Z",
      "outcome_time": "2026-02-05T11:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4849.9,
          "impulse_high": 4894.525,
          "fib_entry_level": "62%",
          "entry": 4877.567499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4856.38, planned_rr=2.0, touch=2026-02-05T12:05:00Z, outcome=tp_first",
      "entry": 4856.38,
      "stop": 4878.36,
      "target": 4812.42,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-05T12:05:00Z",
      "outcome_time": "2026-02-05T12:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4834.4,
          "impulse_high": 4878.36,
          "fib_entry_level": "50%",
          "entry": 4856.379999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4848.595,
              "high": 4864.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4861.655, planned_rr=3.0, touch=2026-02-05T12:05:00Z, outcome=tp_first",
      "entry": 4861.655,
      "stop": 4878.36,
      "target": 4811.541,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-05T12:05:00Z",
      "outcome_time": "2026-02-05T12:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4834.4,
          "impulse_high": 4878.36,
          "fib_entry_level": "62%",
          "entry": 4861.655199999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4848.595,
              "high": 4864.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4835.1, planned_rr=3.0, touch=2026-02-05T13:10:00Z, outcome=sl_first",
      "entry": 4835.1,
      "stop": 4855.35,
      "target": 4774.349,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T13:10:00Z",
      "outcome_time": "2026-02-05T13:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4802.06,
          "impulse_high": 4855.35,
          "fib_entry_level": "62%",
          "entry": 4835.0998,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4851.325, planned_rr=3.0, touch=2026-02-05T13:35:00Z, outcome=sl_first",
      "entry": 4851.325,
      "stop": 4868.82,
      "target": 4798.839,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T13:35:00Z",
      "outcome_time": "2026-02-05T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4822.78,
          "impulse_high": 4868.82,
          "fib_entry_level": "62%",
          "entry": 4851.324799999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4848.595,
              "high": 4864.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T20-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-05T20:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4813.045, planned_rr=2.0, touch=2026-02-05T20:35:00Z, outcome=sl_first",
      "entry": 4813.045,
      "stop": 4807.11,
      "target": 4824.915,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T20:35:00Z",
      "outcome_time": "2026-02-05T20:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T20-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4807.11,
          "entry": 4813.045,
          "stop": 4807.11,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T21-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T21:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4768.045, planned_rr=3.0, touch=2026-02-05T21:50:00Z, outcome=sl_first",
      "entry": 4768.045,
      "stop": 4759.48,
      "target": 4793.741,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T21:50:00Z",
      "outcome_time": "2026-02-05T21:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T21-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T21:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4759.48,
          "impulse_high": 4782.02,
          "fib_entry_level": "62%",
          "entry": 4768.0452,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T21-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-05T21:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-02-05T21-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T21:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4759.48,
          "entry": 4707.8975,
          "stop": 4759.48,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4707.695,
              "high": 4708.1,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4730.4,
              "high": 4739.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T21-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-05T21:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4780.675, planned_rr=2.0, touch=2026-02-05T21:55:00Z, outcome=sl_first",
      "entry": 4780.675,
      "stop": 4759.48,
      "target": 4823.065,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-05T21:55:00Z",
      "outcome_time": "2026-02-05T23:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T21-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T21:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4759.48,
          "entry": 4780.675,
          "stop": 4759.48,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4760.995, planned_rr=2.0, touch=2026-02-05T23:20:00Z, outcome=tp_first",
      "entry": 4760.995,
      "stop": 4773.29,
      "target": 4736.405,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-05T23:20:00Z",
      "outcome_time": "2026-02-05T23:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4748.7,
          "impulse_high": 4773.29,
          "fib_entry_level": "50%",
          "entry": 4760.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4757.045,
              "high": 4766.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4763.946, planned_rr=3.0, touch=2026-02-05T23:20:00Z, outcome=tp_first",
      "entry": 4763.946,
      "stop": 4773.29,
      "target": 4735.913,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-05T23:20:00Z",
      "outcome_time": "2026-02-05T23:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4748.7,
          "impulse_high": 4773.29,
          "fib_entry_level": "62%",
          "entry": 4763.9457999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4757.045,
              "high": 4766.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4723.38, planned_rr=2.0, touch=2026-02-06T00:25:00Z, outcome=sl_first",
      "entry": 4723.38,
      "stop": 4743.275,
      "target": 4683.59,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T00:25:00Z",
      "outcome_time": "2026-02-06T00:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4703.485,
          "impulse_high": 4743.275,
          "fib_entry_level": "50%",
          "entry": 4723.379999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4707.695,
              "high": 4732.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-05T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4728.155, planned_rr=3.0, touch=2026-02-06T00:25:00Z, outcome=sl_first",
      "entry": 4728.155,
      "stop": 4743.275,
      "target": 4682.794,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T00:25:00Z",
      "outcome_time": "2026-02-06T00:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-05",
        "timestamp": "2026-02-05T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4703.485,
          "impulse_high": 4743.275,
          "fib_entry_level": "62%",
          "entry": 4728.154799999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4707.695,
              "high": 4732.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5024.03,
            "PDL": 4759.48,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4697.074, planned_rr=3.0, touch=2026-02-06T00:05:00Z, outcome=tp_first",
      "entry": 4697.074,
      "stop": 4707.695,
      "target": 4665.211,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-06T00:05:00Z",
      "outcome_time": "2026-02-06T00:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4679.745,
          "impulse_high": 4707.695,
          "fib_entry_level": "62%",
          "entry": 4697.074,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T00-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-06T00:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4707.898, planned_rr=2.0, touch=2026-02-06T00:25:00Z, outcome=tp_first",
      "entry": 4707.898,
      "stop": 4655.23,
      "target": 4813.233,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T00:25:00Z",
      "outcome_time": "2026-02-06T02:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T00-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4655.23,
          "entry": 4707.8975,
          "stop": 4655.23,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4707.695,
              "high": 4708.1,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4730.4,
              "high": 4739.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T00-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-06T00:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4724.4, planned_rr=2.0, touch=2026-02-06T00:25:00Z, outcome=tp_first",
      "entry": 4724.4,
      "stop": 4655.23,
      "target": 4862.74,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T00:25:00Z",
      "outcome_time": "2026-02-06T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T00-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4655.23,
          "entry": 4724.4,
          "stop": 4655.23,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4734.423, planned_rr=2.0, touch=2026-02-06T00:35:00Z, outcome=sl_first",
      "entry": 4734.423,
      "stop": 4708.1,
      "target": 4787.068,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T00:35:00Z",
      "outcome_time": "2026-02-06T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4708.1,
          "impulse_high": 4760.745,
          "fib_entry_level": "50%",
          "entry": 4734.422500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4730.4,
              "high": 4739.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4728.105, planned_rr=3.0, touch=2026-02-06T01:00:00Z, outcome=sl_first",
      "entry": 4728.105,
      "stop": 4708.1,
      "target": 4788.12,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T01:00:00Z",
      "outcome_time": "2026-02-06T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.1,
          "impulse_high": 4760.745,
          "fib_entry_level": "62%",
          "entry": 4728.1051,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4740.72, planned_rr=3.0, touch=2026-02-06T01:30:00Z, outcome=sl_first",
      "entry": 4740.72,
      "stop": 4762.935,
      "target": 4674.076,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T01:30:00Z",
      "outcome_time": "2026-02-06T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4704.475,
          "impulse_high": 4762.935,
          "fib_entry_level": "62%",
          "entry": 4740.720200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4802.462, planned_rr=2.0, touch=2026-02-06T02:25:00Z, outcome=tp_first",
      "entry": 4802.462,
      "stop": 4783.005,
      "target": 4841.377,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T02:25:00Z",
      "outcome_time": "2026-02-06T02:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4783.005,
          "impulse_high": 4821.92,
          "fib_entry_level": "50%",
          "entry": 4802.4625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4796.965,
              "high": 4809.54,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4835.952, planned_rr=2.0, touch=2026-02-06T05:20:00Z, outcome=tp_first",
      "entry": 4835.952,
      "stop": 4819.445,
      "target": 4868.967,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T05:20:00Z",
      "outcome_time": "2026-02-06T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4819.445,
          "impulse_high": 4852.46,
          "fib_entry_level": "50%",
          "entry": 4835.952499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4826.225,
              "high": 4837.18,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4831.991, planned_rr=3.0, touch=2026-02-06T05:20:00Z, outcome=tp_first",
      "entry": 4831.991,
      "stop": 4819.445,
      "target": 4869.628,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-06T05:20:00Z",
      "outcome_time": "2026-02-06T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4819.445,
          "impulse_high": 4852.46,
          "fib_entry_level": "62%",
          "entry": 4831.9907,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4826.225,
              "high": 4837.18,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4875.979, planned_rr=3.0, touch=2026-02-06T05:50:00Z, outcome=sl_first",
      "entry": 4875.979,
      "stop": 4862.39,
      "target": 4916.745,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T05:50:00Z",
      "outcome_time": "2026-02-06T06:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4862.39,
          "impulse_high": 4898.15,
          "fib_entry_level": "62%",
          "entry": 4875.9788,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T06-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-06T06:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4866.74, planned_rr=2.0, touch=2026-02-06T06:10:00Z, outcome=sl_first",
      "entry": 4866.74,
      "stop": 4903.4,
      "target": 4793.42,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T06:10:00Z",
      "outcome_time": "2026-02-06T12:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T06-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4903.4,
          "entry": 4866.74,
          "stop": 4903.4,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4859.44, planned_rr=3.0, touch=2026-02-06T09:20:00Z, outcome=sl_first",
      "entry": 4859.44,
      "stop": 4871.505,
      "target": 4823.245,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T09:20:00Z",
      "outcome_time": "2026-02-06T09:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4839.755,
          "impulse_high": 4871.505,
          "fib_entry_level": "62%",
          "entry": 4859.4400000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4887.073, planned_rr=3.0, touch=2026-02-06T12:20:00Z, outcome=sl_first",
      "entry": 4887.073,
      "stop": 4896.52,
      "target": 4858.733,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T12:20:00Z",
      "outcome_time": "2026-02-06T12:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4871.66,
          "impulse_high": 4896.52,
          "fib_entry_level": "62%",
          "entry": 4887.0732,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4923.667, planned_rr=2.0, touch=2026-02-06T13:35:00Z, outcome=sl_first",
      "entry": 4923.667,
      "stop": 4908.83,
      "target": 4953.342,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T13:35:00Z",
      "outcome_time": "2026-02-06T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4908.83,
          "impulse_high": 4938.505,
          "fib_entry_level": "50%",
          "entry": 4923.6675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4904.98,
              "high": 4928.425,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4920.106, planned_rr=3.0, touch=2026-02-06T14:05:00Z, outcome=sl_first",
      "entry": 4920.106,
      "stop": 4908.83,
      "target": 4953.936,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T14:05:00Z",
      "outcome_time": "2026-02-06T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4908.83,
          "impulse_high": 4938.505,
          "fib_entry_level": "62%",
          "entry": 4920.1065,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4904.98,
              "high": 4928.425,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4914.321, planned_rr=3.0, touch=2026-02-06T14:20:00Z, outcome=sl_first",
      "entry": 4914.321,
      "stop": 4926.5,
      "target": 4877.784,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T14:20:00Z",
      "outcome_time": "2026-02-06T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4894.45,
          "impulse_high": 4926.5,
          "fib_entry_level": "62%",
          "entry": 4914.321,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4922.605, planned_rr=2.0, touch=2026-02-06T16:25:00Z, outcome=tp_first",
      "entry": 4922.605,
      "stop": 4897.55,
      "target": 4972.715,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T16:25:00Z",
      "outcome_time": "2026-02-08T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4897.55,
          "impulse_high": 4947.66,
          "fib_entry_level": "50%",
          "entry": 4922.605,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4904.98,
              "high": 4928.425,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-06T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4948.169, planned_rr=3.0, touch=2026-02-06T20:40:00Z, outcome=sl_first",
      "entry": 4948.169,
      "stop": 4955.205,
      "target": 4927.062,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-06T20:40:00Z",
      "outcome_time": "2026-02-06T21:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4936.69,
          "impulse_high": 4955.205,
          "fib_entry_level": "62%",
          "entry": 4948.1693,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4946.7,
              "high": 4957.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-06T20-30-00Z_long_breaker_continuation",
      "timestamp": "2026-02-06T20:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4956.44, planned_rr=2.0, touch=2026-02-06T21:05:00Z, outcome=tp_first",
      "entry": 4956.44,
      "stop": 4936.69,
      "target": 4995.94,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-06T21:05:00Z",
      "outcome_time": "2026-02-08T23:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-06T20-30-00Z_long_breaker_continuation",
        "date": "2026-02-06",
        "timestamp": "2026-02-06T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4936.69,
          "entry": 4956.44,
          "stop": 4936.69,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4954.9,
              "high": 4957.98,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4990.67,
              "high": 5020.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-08T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-08T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4981.075, planned_rr=3.0, touch=2026-02-08T23:05:00Z, outcome=sl_first",
      "entry": 4981.075,
      "stop": 4990.67,
      "target": 4952.29,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-08T23:05:00Z",
      "outcome_time": "2026-02-08T23:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-08T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-08",
        "timestamp": "2026-02-08T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4965.42,
          "impulse_high": 4990.67,
          "fib_entry_level": "62%",
          "entry": 4981.075,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-08T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-08T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5002.573, planned_rr=2.0, touch=2026-02-08T23:25:00Z, outcome=sl_first",
      "entry": 5002.573,
      "stop": 4976.795,
      "target": 5054.128,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-08T23:25:00Z",
      "outcome_time": "2026-02-09T01:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-08T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-08",
        "timestamp": "2026-02-08T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4976.795,
          "impulse_high": 5028.35,
          "fib_entry_level": "50%",
          "entry": 5002.5725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4990.67,
              "high": 5020.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-08T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-08T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4996.386, planned_rr=3.0, touch=2026-02-08T23:20:00Z, outcome=sl_first",
      "entry": 4996.386,
      "stop": 4976.795,
      "target": 5055.159,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-08T23:20:00Z",
      "outcome_time": "2026-02-09T01:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-08T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-08",
        "timestamp": "2026-02-08T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4976.795,
          "impulse_high": 5028.35,
          "fib_entry_level": "62%",
          "entry": 4996.3859,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4990.67,
              "high": 5020.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-08T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-08T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5032.3, planned_rr=2.0, touch=2026-02-08T23:35:00Z, outcome=sl_first",
      "entry": 5032.3,
      "stop": 5020.15,
      "target": 5056.6,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-08T23:35:00Z",
      "outcome_time": "2026-02-09T00:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-08T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-08",
        "timestamp": "2026-02-08T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5020.15,
          "impulse_high": 5044.45,
          "fib_entry_level": "50%",
          "entry": 5032.299999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5028.35,
              "high": 5033.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-08T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-08T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5029.384, planned_rr=3.0, touch=2026-02-08T23:35:00Z, outcome=sl_first",
      "entry": 5029.384,
      "stop": 5020.15,
      "target": 5057.086,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-08T23:35:00Z",
      "outcome_time": "2026-02-09T00:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-08T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-08",
        "timestamp": "2026-02-08T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5020.15,
          "impulse_high": 5044.45,
          "fib_entry_level": "62%",
          "entry": 5029.384,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5028.35,
              "high": 5033.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4971.34,
            "PDL": 4655.23,
            "PWH": 5091.93,
            "PWL": 4402.38
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5000.183, planned_rr=3.0, touch=2026-02-09T01:50:00Z, outcome=sl_first",
      "entry": 5000.183,
      "stop": 5012.4,
      "target": 4963.532,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T01:50:00Z",
      "outcome_time": "2026-02-09T02:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4980.25,
          "impulse_high": 5012.4,
          "fib_entry_level": "62%",
          "entry": 5000.183,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5023.663, planned_rr=2.0, touch=2026-02-09T05:20:00Z, outcome=tp_first",
      "entry": 5023.663,
      "stop": 5015.52,
      "target": 5039.948,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-09T05:20:00Z",
      "outcome_time": "2026-02-09T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5015.52,
          "impulse_high": 5031.805,
          "fib_entry_level": "50%",
          "entry": 5023.6625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5020.175,
              "high": 5025.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5021.708, planned_rr=3.0, touch=2026-02-09T05:20:00Z, outcome=tp_first",
      "entry": 5021.708,
      "stop": 5015.52,
      "target": 5040.273,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-09T05:20:00Z",
      "outcome_time": "2026-02-09T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5015.52,
          "impulse_high": 5031.805,
          "fib_entry_level": "62%",
          "entry": 5021.7083,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5020.175,
              "high": 5025.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5019.683, planned_rr=2.0, touch=2026-02-09T07:05:00Z, outcome=sl_first",
      "entry": 5019.683,
      "stop": 5031.14,
      "target": 4996.768,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T07:05:00Z",
      "outcome_time": "2026-02-09T08:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5008.225,
          "impulse_high": 5031.14,
          "fib_entry_level": "50%",
          "entry": 5019.682500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5015.29,
              "high": 5027.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5022.432, planned_rr=3.0, touch=2026-02-09T07:05:00Z, outcome=sl_first",
      "entry": 5022.432,
      "stop": 5031.14,
      "target": 4996.309,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T07:05:00Z",
      "outcome_time": "2026-02-09T08:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5008.225,
          "impulse_high": 5031.14,
          "fib_entry_level": "62%",
          "entry": 5022.4323,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5015.29,
              "high": 5027.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5009.973, planned_rr=3.0, touch=2026-02-09T09:45:00Z, outcome=sl_first",
      "entry": 5009.973,
      "stop": 5003.0,
      "target": 5030.892,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T09:45:00Z",
      "outcome_time": "2026-02-09T09:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5003.0,
          "impulse_high": 5021.35,
          "fib_entry_level": "62%",
          "entry": 5009.973,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5000.842, planned_rr=2.0, touch=2026-02-09T10:25:00Z, outcome=sl_first",
      "entry": 5000.842,
      "stop": 5015.45,
      "target": 4971.627,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T10:25:00Z",
      "outcome_time": "2026-02-09T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4986.235,
          "impulse_high": 5015.45,
          "fib_entry_level": "50%",
          "entry": 5000.8425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4996.71,
              "high": 5013.885,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5004.348, planned_rr=3.0, touch=2026-02-09T10:25:00Z, outcome=sl_first",
      "entry": 5004.348,
      "stop": 5015.45,
      "target": 4971.043,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T10:25:00Z",
      "outcome_time": "2026-02-09T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4986.235,
          "impulse_high": 5015.45,
          "fib_entry_level": "62%",
          "entry": 5004.3483,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4996.71,
              "high": 5013.885,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4997.231, planned_rr=3.0, touch=2026-02-09T11:20:00Z, outcome=tp_first",
      "entry": 4997.231,
      "stop": 4991.32,
      "target": 5014.964,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-09T11:20:00Z",
      "outcome_time": "2026-02-09T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4991.32,
          "impulse_high": 5006.875,
          "fib_entry_level": "62%",
          "entry": 4997.2309,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5016.42, planned_rr=2.0, touch=2026-02-09T13:10:00Z, outcome=sl_first",
      "entry": 5016.42,
      "stop": 5007.84,
      "target": 5033.58,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T13:10:00Z",
      "outcome_time": "2026-02-09T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5007.84,
          "impulse_high": 5025.0,
          "fib_entry_level": "50%",
          "entry": 5016.42,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5007.435,
              "high": 5019.155,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5014.361, planned_rr=3.0, touch=2026-02-09T13:15:00Z, outcome=sl_first",
      "entry": 5014.361,
      "stop": 5007.84,
      "target": 5033.923,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T13:15:00Z",
      "outcome_time": "2026-02-09T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5007.84,
          "impulse_high": 5025.0,
          "fib_entry_level": "62%",
          "entry": 5014.3608,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5007.435,
              "high": 5019.155,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5013.993, planned_rr=2.0, touch=2026-02-09T13:20:00Z, outcome=sl_first",
      "entry": 5013.993,
      "stop": 5024.415,
      "target": 4993.148,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T13:20:00Z",
      "outcome_time": "2026-02-09T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5003.57,
          "impulse_high": 5024.415,
          "fib_entry_level": "50%",
          "entry": 5013.9925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5007.84,
              "high": 5025.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5016.494, planned_rr=3.0, touch=2026-02-09T13:20:00Z, outcome=sl_first",
      "entry": 5016.494,
      "stop": 5024.415,
      "target": 4992.731,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T13:20:00Z",
      "outcome_time": "2026-02-09T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5003.57,
          "impulse_high": 5024.415,
          "fib_entry_level": "62%",
          "entry": 5016.4938999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5007.84,
              "high": 5025.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5025.65, planned_rr=2.0, touch=2026-02-09T15:15:00Z, outcome=tp_first",
      "entry": 5025.65,
      "stop": 5014.005,
      "target": 5048.94,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-09T15:15:00Z",
      "outcome_time": "2026-02-09T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5014.005,
          "impulse_high": 5037.295,
          "fib_entry_level": "50%",
          "entry": 5025.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5023.98,
              "high": 5031.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5044.862, planned_rr=2.0, touch=2026-02-09T17:55:00Z, outcome=tp_first",
      "entry": 5044.862,
      "stop": 5033.36,
      "target": 5067.867,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-09T17:55:00Z",
      "outcome_time": "2026-02-09T19:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5033.36,
          "impulse_high": 5056.365,
          "fib_entry_level": "50%",
          "entry": 5044.862499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5035.625,
              "high": 5052.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5042.102, planned_rr=3.0, touch=2026-02-09T17:55:00Z, outcome=tp_first",
      "entry": 5042.102,
      "stop": 5033.36,
      "target": 5068.328,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-09T17:55:00Z",
      "outcome_time": "2026-02-09T19:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5033.36,
          "impulse_high": 5056.365,
          "fib_entry_level": "62%",
          "entry": 5042.1019,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5035.625,
              "high": 5052.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5055.383, planned_rr=3.0, touch=2026-02-09T17:50:00Z, outcome=sl_first",
      "entry": 5055.383,
      "stop": 5064.22,
      "target": 5028.872,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T17:50:00Z",
      "outcome_time": "2026-02-09T19:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5040.965,
          "impulse_high": 5064.22,
          "fib_entry_level": "62%",
          "entry": 5055.3831,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-09T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-09T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5034.967, planned_rr=3.0, touch=2026-02-09T23:10:00Z, outcome=sl_first",
      "entry": 5034.967,
      "stop": 5064.13,
      "target": 4947.478,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-09T23:10:00Z",
      "outcome_time": "2026-02-10T14:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-09T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-09",
        "timestamp": "2026-02-09T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4987.385,
          "impulse_high": 5064.13,
          "fib_entry_level": "62%",
          "entry": 5034.9669,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5029.1,
              "high": 5056.965,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5086.68,
            "PDL": 4965.42,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5028.836, planned_rr=3.0, touch=2026-02-10T01:20:00Z, outcome=sl_first",
      "entry": 5028.836,
      "stop": 5038.005,
      "target": 5001.327,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T01:20:00Z",
      "outcome_time": "2026-02-10T02:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5013.875,
          "impulse_high": 5038.005,
          "fib_entry_level": "62%",
          "entry": 5028.8356,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5028.825,
              "high": 5034.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5023.014, planned_rr=3.0, touch=2026-02-10T05:20:00Z, outcome=sl_first",
      "entry": 5023.014,
      "stop": 5030.105,
      "target": 5001.742,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T05:20:00Z",
      "outcome_time": "2026-02-10T05:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5011.445,
          "impulse_high": 5030.105,
          "fib_entry_level": "62%",
          "entry": 5023.0142,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T09-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-10T09:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5051.705, planned_rr=2.0, touch=2026-02-10T09:05:00Z, outcome=sl_first",
      "entry": 5051.705,
      "stop": 5063.55,
      "target": 5028.015,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T09:05:00Z",
      "outcome_time": "2026-02-10T09:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T09-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5063.55,
          "entry": 5051.705,
          "stop": 5063.55,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5049.867, planned_rr=3.0, touch=2026-02-10T12:05:00Z, outcome=sl_first",
      "entry": 5049.867,
      "stop": 5045.155,
      "target": 5064.003,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T12:05:00Z",
      "outcome_time": "2026-02-10T12:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5045.155,
          "impulse_high": 5057.555,
          "fib_entry_level": "62%",
          "entry": 5049.867,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5049.253, planned_rr=2.0, touch=2026-02-10T12:05:00Z, outcome=tp_first",
      "entry": 5049.253,
      "stop": 5057.285,
      "target": 5033.188,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-10T12:05:00Z",
      "outcome_time": "2026-02-10T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5041.22,
          "impulse_high": 5057.285,
          "fib_entry_level": "50%",
          "entry": 5049.2525000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5045.155,
              "high": 5057.555,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5042.545,
              "high": 5051.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5051.18, planned_rr=3.0, touch=2026-02-10T12:05:00Z, outcome=tp_first",
      "entry": 5051.18,
      "stop": 5057.285,
      "target": 5032.866,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-10T12:05:00Z",
      "outcome_time": "2026-02-10T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5041.22,
          "impulse_high": 5057.285,
          "fib_entry_level": "62%",
          "entry": 5051.1803,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5045.155,
              "high": 5057.555,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5042.545,
              "high": 5051.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5035.887, planned_rr=2.0, touch=2026-02-10T12:40:00Z, outcome=sl_first",
      "entry": 5035.887,
      "stop": 5047.96,
      "target": 5011.742,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T12:40:00Z",
      "outcome_time": "2026-02-10T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5023.815,
          "impulse_high": 5047.96,
          "fib_entry_level": "50%",
          "entry": 5035.8875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5038.785, planned_rr=3.0, touch=2026-02-10T12:40:00Z, outcome=sl_first",
      "entry": 5038.785,
      "stop": 5047.96,
      "target": 5011.26,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T12:40:00Z",
      "outcome_time": "2026-02-10T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5023.815,
          "impulse_high": 5047.96,
          "fib_entry_level": "62%",
          "entry": 5038.7849,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T12-30-00Z_long_breaker_continuation",
      "timestamp": "2026-02-10T12:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5047.962, planned_rr=2.0, touch=2026-02-10T13:30:00Z, outcome=sl_first",
      "entry": 5047.962,
      "stop": 5023.815,
      "target": 5096.257,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T13:30:00Z",
      "outcome_time": "2026-02-10T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T12-30-00Z_long_breaker_continuation",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5023.815,
          "entry": 5047.9625,
          "stop": 5023.815,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5046.395,
              "high": 5049.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5032.691, planned_rr=3.0, touch=2026-02-10T13:05:00Z, outcome=tp_first",
      "entry": 5032.691,
      "stop": 5026.605,
      "target": 5050.948,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-10T13:05:00Z",
      "outcome_time": "2026-02-10T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5026.605,
          "impulse_high": 5042.62,
          "fib_entry_level": "62%",
          "entry": 5032.6907,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5048.552, planned_rr=2.0, touch=2026-02-10T13:35:00Z, outcome=tp_first",
      "entry": 5048.552,
      "stop": 5038.045,
      "target": 5069.567,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-10T13:35:00Z",
      "outcome_time": "2026-02-10T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5038.045,
          "impulse_high": 5059.06,
          "fib_entry_level": "50%",
          "entry": 5048.5525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5046.395,
              "high": 5049.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5046.031, planned_rr=3.0, touch=2026-02-10T14:45:00Z, outcome=sl_first",
      "entry": 5046.031,
      "stop": 5038.045,
      "target": 5069.988,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T14:45:00Z",
      "outcome_time": "2026-02-10T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5038.045,
          "impulse_high": 5059.06,
          "fib_entry_level": "62%",
          "entry": 5046.0307,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5063.185, planned_rr=3.0, touch=2026-02-10T14:35:00Z, outcome=sl_first",
      "entry": 5063.185,
      "stop": 5056.03,
      "target": 5084.652,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T14:35:00Z",
      "outcome_time": "2026-02-10T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5056.03,
          "impulse_high": 5074.86,
          "fib_entry_level": "62%",
          "entry": 5063.185399999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-15-00Z_short_breaker_continuation",
      "timestamp": "2026-02-10T14:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=5051.355, planned_rr=2.0, touch=2026-02-10T14:45:00Z, outcome=tp_first",
      "entry": 5051.355,
      "stop": 5074.86,
      "target": 5004.345,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-10T14:45:00Z",
      "outcome_time": "2026-02-10T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-15-00Z_short_breaker_continuation",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5074.86,
          "entry": 5051.355,
          "stop": 5074.86,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5045.155,
              "high": 5057.555,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-30-00Z_short_breaker_continuation",
      "timestamp": "2026-02-10T14:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=5051.355, planned_rr=2.0, touch=2026-02-10T14:45:00Z, outcome=sl_first",
      "entry": 5051.355,
      "stop": 5078.745,
      "target": 4996.575,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T14:45:00Z",
      "outcome_time": "2026-02-11T10:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-30-00Z_short_breaker_continuation",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5078.745,
          "entry": 5051.355,
          "stop": 5078.745,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5045.155,
              "high": 5057.555,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-02-10T14:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=5051.355, planned_rr=2.0, touch=2026-02-10T14:45:00Z, outcome=sl_first",
      "entry": 5051.355,
      "stop": 5078.745,
      "target": 4996.575,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T14:45:00Z",
      "outcome_time": "2026-02-11T10:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5078.745,
          "entry": 5051.355,
          "stop": 5078.745,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5045.155,
              "high": 5057.555,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-10T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=5056.08, planned_rr=2.0, touch=2026-02-10T14:40:00Z, outcome=tp_first",
      "entry": 5056.08,
      "stop": 5078.745,
      "target": 5010.75,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-10T14:40:00Z",
      "outcome_time": "2026-02-10T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5078.745,
          "entry": 5056.08,
          "stop": 5078.745,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5038.622, planned_rr=2.0, touch=2026-02-10T14:50:00Z, outcome=tp_first",
      "entry": 5038.622,
      "stop": 5056.45,
      "target": 5002.967,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-10T14:50:00Z",
      "outcome_time": "2026-02-10T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5020.795,
          "impulse_high": 5056.45,
          "fib_entry_level": "50%",
          "entry": 5038.6224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5034.495,
              "high": 5042.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5042.901, planned_rr=3.0, touch=2026-02-10T14:55:00Z, outcome=tp_first",
      "entry": 5042.901,
      "stop": 5056.45,
      "target": 5002.254,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-10T14:55:00Z",
      "outcome_time": "2026-02-10T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5020.795,
          "impulse_high": 5056.45,
          "fib_entry_level": "62%",
          "entry": 5042.9011,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5042.545,
              "high": 5051.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5022.817, planned_rr=3.0, touch=2026-02-10T15:35:00Z, outcome=sl_first",
      "entry": 5022.817,
      "stop": 5037.445,
      "target": 4978.933,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T15:35:00Z",
      "outcome_time": "2026-02-10T17:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4998.95,
          "impulse_high": 5037.445,
          "fib_entry_level": "62%",
          "entry": 5022.8169,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-10T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-10T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5042.049, planned_rr=3.0, touch=2026-02-10T23:30:00Z, outcome=sl_first",
      "entry": 5042.049,
      "stop": 5034.2,
      "target": 5065.596,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-10T23:30:00Z",
      "outcome_time": "2026-02-11T00:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-10T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-10",
        "timestamp": "2026-02-10T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5034.2,
          "impulse_high": 5054.855,
          "fib_entry_level": "62%",
          "entry": 5042.0489,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5078.745,
            "PDL": 4987.385,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5039.389, planned_rr=3.0, touch=2026-02-11T00:05:00Z, outcome=sl_first",
      "entry": 5039.389,
      "stop": 5044.605,
      "target": 5023.743,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T00:05:00Z",
      "outcome_time": "2026-02-11T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5030.88,
          "impulse_high": 5044.605,
          "fib_entry_level": "62%",
          "entry": 5039.389499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5037.76, planned_rr=3.0, touch=2026-02-11T02:05:00Z, outcome=tp_first",
      "entry": 5037.76,
      "stop": 5032.71,
      "target": 5052.911,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T02:05:00Z",
      "outcome_time": "2026-02-11T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5032.71,
          "impulse_high": 5046.0,
          "fib_entry_level": "62%",
          "entry": 5037.7602,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5037.18,
              "high": 5038.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5047.153, planned_rr=2.0, touch=2026-02-11T01:50:00Z, outcome=sl_first",
      "entry": 5047.153,
      "stop": 5041.27,
      "target": 5058.917,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T01:50:00Z",
      "outcome_time": "2026-02-11T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5041.27,
          "impulse_high": 5053.035,
          "fib_entry_level": "50%",
          "entry": 5047.1525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5046.8,
              "high": 5050.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5045.741, planned_rr=3.0, touch=2026-02-11T01:50:00Z, outcome=sl_first",
      "entry": 5045.741,
      "stop": 5041.27,
      "target": 5059.153,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T01:50:00Z",
      "outcome_time": "2026-02-11T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5041.27,
          "impulse_high": 5053.035,
          "fib_entry_level": "62%",
          "entry": 5045.7407,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5048.569, planned_rr=3.0, touch=2026-02-11T02:35:00Z, outcome=sl_first",
      "entry": 5048.569,
      "stop": 5056.885,
      "target": 5023.62,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T02:35:00Z",
      "outcome_time": "2026-02-11T02:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5035.0,
          "impulse_high": 5056.885,
          "fib_entry_level": "62%",
          "entry": 5048.5687,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T02-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-11T02:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5037.21, planned_rr=2.0, touch=2026-02-11T02:05:00Z, outcome=sl_first",
      "entry": 5037.21,
      "stop": 5056.885,
      "target": 4997.86,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T02:05:00Z",
      "outcome_time": "2026-02-11T02:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T02-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5056.885,
          "entry": 5037.21,
          "stop": 5056.885,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5047.788, planned_rr=2.0, touch=2026-02-11T02:35:00Z, outcome=tp_first",
      "entry": 5047.788,
      "stop": 5041.245,
      "target": 5060.873,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-11T02:35:00Z",
      "outcome_time": "2026-02-11T03:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5041.245,
          "impulse_high": 5054.33,
          "fib_entry_level": "50%",
          "entry": 5047.7875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5046.8,
              "high": 5050.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5046.217, planned_rr=3.0, touch=2026-02-11T02:35:00Z, outcome=tp_first",
      "entry": 5046.217,
      "stop": 5041.245,
      "target": 5061.134,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T02:35:00Z",
      "outcome_time": "2026-02-11T05:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5041.245,
          "impulse_high": 5054.33,
          "fib_entry_level": "62%",
          "entry": 5046.2173,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5058.42, planned_rr=2.0, touch=2026-02-11T05:35:00Z, outcome=sl_first",
      "entry": 5058.42,
      "stop": 5052.8,
      "target": 5069.66,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T05:35:00Z",
      "outcome_time": "2026-02-11T05:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5052.8,
          "impulse_high": 5064.04,
          "fib_entry_level": "50%",
          "entry": 5058.42,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5053.56,
              "high": 5060.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5057.071, planned_rr=3.0, touch=2026-02-11T05:45:00Z, outcome=sl_first",
      "entry": 5057.071,
      "stop": 5052.8,
      "target": 5069.885,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T05:45:00Z",
      "outcome_time": "2026-02-11T05:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5052.8,
          "impulse_high": 5064.04,
          "fib_entry_level": "62%",
          "entry": 5057.0712,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5053.56,
              "high": 5060.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5056.603, planned_rr=3.0, touch=2026-02-11T06:05:00Z, outcome=sl_first",
      "entry": 5056.603,
      "stop": 5062.89,
      "target": 5037.742,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T06:05:00Z",
      "outcome_time": "2026-02-11T06:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5046.345,
          "impulse_high": 5062.89,
          "fib_entry_level": "62%",
          "entry": 5056.6029,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5058.28, planned_rr=2.0, touch=2026-02-11T06:50:00Z, outcome=sl_first",
      "entry": 5058.28,
      "stop": 5051.86,
      "target": 5071.12,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T06:50:00Z",
      "outcome_time": "2026-02-11T07:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5051.86,
          "impulse_high": 5064.7,
          "fib_entry_level": "50%",
          "entry": 5058.28,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5053.56,
              "high": 5060.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5056.739, planned_rr=3.0, touch=2026-02-11T07:20:00Z, outcome=sl_first",
      "entry": 5056.739,
      "stop": 5051.86,
      "target": 5071.377,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T07:20:00Z",
      "outcome_time": "2026-02-11T07:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5051.86,
          "impulse_high": 5064.7,
          "fib_entry_level": "62%",
          "entry": 5056.7392,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5053.56,
              "high": 5060.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5065.398, planned_rr=3.0, touch=2026-02-11T10:05:00Z, outcome=tp_first",
      "entry": 5065.398,
      "stop": 5062.59,
      "target": 5073.823,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T10:05:00Z",
      "outcome_time": "2026-02-11T10:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5062.59,
          "impulse_high": 5069.98,
          "fib_entry_level": "62%",
          "entry": 5065.3982,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5084.26, planned_rr=2.0, touch=2026-02-11T10:40:00Z, outcome=tp_first",
      "entry": 5084.26,
      "stop": 5068.24,
      "target": 5116.3,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-11T10:40:00Z",
      "outcome_time": "2026-02-11T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5068.24,
          "impulse_high": 5100.28,
          "fib_entry_level": "50%",
          "entry": 5084.26,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5076.685,
              "high": 5091.245,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 5082.68,
              "high": 5095.985,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5080.415, planned_rr=3.0, touch=2026-02-11T10:40:00Z, outcome=tp_first",
      "entry": 5080.415,
      "stop": 5068.24,
      "target": 5116.941,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T10:40:00Z",
      "outcome_time": "2026-02-11T12:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5068.24,
          "impulse_high": 5100.28,
          "fib_entry_level": "62%",
          "entry": 5080.4151999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5076.685,
              "high": 5091.245,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5098.943, planned_rr=2.0, touch=2026-02-11T11:20:00Z, outcome=tp_first",
      "entry": 5098.943,
      "stop": 5089.63,
      "target": 5117.568,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-11T11:20:00Z",
      "outcome_time": "2026-02-11T12:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5089.63,
          "impulse_high": 5108.255,
          "fib_entry_level": "50%",
          "entry": 5098.9425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5095.985,
              "high": 5100.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5096.708, planned_rr=3.0, touch=2026-02-11T11:20:00Z, outcome=tp_first",
      "entry": 5096.708,
      "stop": 5089.63,
      "target": 5117.94,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T11:20:00Z",
      "outcome_time": "2026-02-11T12:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5089.63,
          "impulse_high": 5108.255,
          "fib_entry_level": "62%",
          "entry": 5096.7075,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5095.985,
              "high": 5100.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5081.289, planned_rr=3.0, touch=2026-02-11T12:35:00Z, outcome=tp_first",
      "entry": 5081.289,
      "stop": 5098.915,
      "target": 5028.41,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T12:35:00Z",
      "outcome_time": "2026-02-11T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5052.53,
          "impulse_high": 5098.915,
          "fib_entry_level": "62%",
          "entry": 5081.2887,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5072.754, planned_rr=3.0, touch=2026-02-11T12:50:00Z, outcome=sl_first",
      "entry": 5072.754,
      "stop": 5065.895,
      "target": 5093.331,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T12:50:00Z",
      "outcome_time": "2026-02-11T13:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5065.895,
          "impulse_high": 5083.945,
          "fib_entry_level": "62%",
          "entry": 5072.754,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5059.795, planned_rr=3.0, touch=2026-02-11T13:35:00Z, outcome=sl_first",
      "entry": 5059.795,
      "stop": 5084.36,
      "target": 4986.1,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T13:35:00Z",
      "outcome_time": "2026-02-11T17:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5019.715,
          "impulse_high": 5084.36,
          "fib_entry_level": "62%",
          "entry": 5059.7949,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5061.135, planned_rr=3.0, touch=2026-02-11T14:35:00Z, outcome=sl_first",
      "entry": 5061.135,
      "stop": 5076.675,
      "target": 5014.515,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T14:35:00Z",
      "outcome_time": "2026-02-11T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5035.78,
          "impulse_high": 5076.675,
          "fib_entry_level": "62%",
          "entry": 5061.1349,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5049.984, planned_rr=3.0, touch=2026-02-11T14:50:00Z, outcome=tp_first",
      "entry": 5049.984,
      "stop": 5040.575,
      "target": 5078.21,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-11T14:50:00Z",
      "outcome_time": "2026-02-11T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5040.575,
          "impulse_high": 5065.335,
          "fib_entry_level": "62%",
          "entry": 5049.9838,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5062.8, planned_rr=3.0, touch=2026-02-11T15:20:00Z, outcome=sl_first",
      "entry": 5062.8,
      "stop": 5074.605,
      "target": 5027.386,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T15:20:00Z",
      "outcome_time": "2026-02-11T16:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5043.54,
          "impulse_high": 5074.605,
          "fib_entry_level": "62%",
          "entry": 5062.8003,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5079.977, planned_rr=2.0, touch=2026-02-11T18:10:00Z, outcome=sl_first",
      "entry": 5079.977,
      "stop": 5092.995,
      "target": 5053.943,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T18:10:00Z",
      "outcome_time": "2026-02-11T19:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5066.96,
          "impulse_high": 5092.995,
          "fib_entry_level": "50%",
          "entry": 5079.9775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5079.485,
              "high": 5088.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-11T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5083.102, planned_rr=3.0, touch=2026-02-11T18:05:00Z, outcome=sl_first",
      "entry": 5083.102,
      "stop": 5092.995,
      "target": 5053.422,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T18:05:00Z",
      "outcome_time": "2026-02-11T19:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5066.96,
          "impulse_high": 5092.995,
          "fib_entry_level": "62%",
          "entry": 5083.1017,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5079.485,
              "high": 5088.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T21-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-02-11T21:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=5073.993, planned_rr=2.0, touch=2026-02-11T21:30:00Z, outcome=sl_first",
      "entry": 5073.993,
      "stop": 5093.335,
      "target": 5035.308,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T21:30:00Z",
      "outcome_time": "2026-02-11T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T21-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T21:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5093.335,
          "entry": 5073.9925,
          "stop": 5093.335,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5071.18,
              "high": 5076.805,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5076.805,
              "high": 5085.27,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-11T21-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-11T21:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5082.365, planned_rr=2.0, touch=2026-02-11T21:25:00Z, outcome=sl_first",
      "entry": 5082.365,
      "stop": 5093.335,
      "target": 5060.425,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-11T21:25:00Z",
      "outcome_time": "2026-02-11T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-11T21-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-11",
        "timestamp": "2026-02-11T21:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5093.335,
          "entry": 5082.365,
          "stop": 5093.335,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5119.345,
            "PDL": 5019.715,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5052.539, planned_rr=3.0, touch=2026-02-12T01:20:00Z, outcome=tp_first",
      "entry": 5052.539,
      "stop": 5047.04,
      "target": 5069.034,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-12T01:20:00Z",
      "outcome_time": "2026-02-12T02:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5047.04,
          "impulse_high": 5061.51,
          "fib_entry_level": "62%",
          "entry": 5052.5386,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T04-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T04:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5062.842, planned_rr=2.0, touch=2026-02-12T04:50:00Z, outcome=tp_first",
      "entry": 5062.842,
      "stop": 5055.325,
      "target": 5077.877,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-12T04:50:00Z",
      "outcome_time": "2026-02-12T05:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T04-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T04:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5055.325,
          "impulse_high": 5070.36,
          "fib_entry_level": "50%",
          "entry": 5062.8425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5060.33,
              "high": 5065.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T04-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T04:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5061.038, planned_rr=3.0, touch=2026-02-12T04:50:00Z, outcome=tp_first",
      "entry": 5061.038,
      "stop": 5055.325,
      "target": 5078.178,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-12T04:50:00Z",
      "outcome_time": "2026-02-12T05:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T04-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T04:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5055.325,
          "impulse_high": 5070.36,
          "fib_entry_level": "62%",
          "entry": 5061.0383,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5060.33,
              "high": 5065.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5058.785, planned_rr=2.0, touch=2026-02-12T13:05:00Z, outcome=tp_first",
      "entry": 5058.785,
      "stop": 5051.485,
      "target": 5073.385,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-12T13:05:00Z",
      "outcome_time": "2026-02-12T13:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5051.485,
          "impulse_high": 5066.085,
          "fib_entry_level": "50%",
          "entry": 5058.785,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5058.76,
              "high": 5062.25,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5057.033, planned_rr=3.0, touch=2026-02-12T13:05:00Z, outcome=tp_first",
      "entry": 5057.033,
      "stop": 5051.485,
      "target": 5073.677,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-12T13:05:00Z",
      "outcome_time": "2026-02-12T13:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5051.485,
          "impulse_high": 5066.085,
          "fib_entry_level": "62%",
          "entry": 5057.032999999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5068.847, planned_rr=2.0, touch=2026-02-12T13:35:00Z, outcome=sl_first",
      "entry": 5068.847,
      "stop": 5060.52,
      "target": 5085.502,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T13:35:00Z",
      "outcome_time": "2026-02-12T14:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5060.52,
          "impulse_high": 5077.175,
          "fib_entry_level": "50%",
          "entry": 5068.8475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5062.25,
              "high": 5074.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5066.849, planned_rr=3.0, touch=2026-02-12T14:10:00Z, outcome=sl_first",
      "entry": 5066.849,
      "stop": 5060.52,
      "target": 5085.836,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T14:10:00Z",
      "outcome_time": "2026-02-12T14:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5060.52,
          "impulse_high": 5077.175,
          "fib_entry_level": "62%",
          "entry": 5066.8489,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5062.25,
              "high": 5074.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5069.575, planned_rr=2.0, touch=2026-02-12T14:05:00Z, outcome=sl_first",
      "entry": 5069.575,
      "stop": 5077.905,
      "target": 5052.915,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T14:05:00Z",
      "outcome_time": "2026-02-12T14:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5061.245,
          "impulse_high": 5077.905,
          "fib_entry_level": "50%",
          "entry": 5069.575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.38,
              "high": 5074.735,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5071.574, planned_rr=3.0, touch=2026-02-12T14:05:00Z, outcome=sl_first",
      "entry": 5071.574,
      "stop": 5077.905,
      "target": 5052.582,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T14:05:00Z",
      "outcome_time": "2026-02-12T14:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5061.245,
          "impulse_high": 5077.905,
          "fib_entry_level": "62%",
          "entry": 5071.5742,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5068.38,
              "high": 5074.735,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5050.65, planned_rr=2.0, touch=2026-02-12T14:55:00Z, outcome=sl_first",
      "entry": 5050.65,
      "stop": 5061.6,
      "target": 5028.75,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T14:55:00Z",
      "outcome_time": "2026-02-12T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5039.7,
          "impulse_high": 5061.6,
          "fib_entry_level": "50%",
          "entry": 5050.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4966.545,
              "high": 5060.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5053.278, planned_rr=3.0, touch=2026-02-12T14:50:00Z, outcome=sl_first",
      "entry": 5053.278,
      "stop": 5061.6,
      "target": 5028.312,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T14:50:00Z",
      "outcome_time": "2026-02-12T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5039.7,
          "impulse_high": 5061.6,
          "fib_entry_level": "62%",
          "entry": 5053.278,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4966.545,
              "high": 5060.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5049.796, planned_rr=3.0, touch=2026-02-12T15:05:00Z, outcome=sl_first",
      "entry": 5049.796,
      "stop": 5039.815,
      "target": 5079.738,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T15:05:00Z",
      "outcome_time": "2026-02-12T16:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5039.815,
          "impulse_high": 5066.08,
          "fib_entry_level": "62%",
          "entry": 5049.7957,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4933.088, planned_rr=3.0, touch=2026-02-12T16:20:00Z, outcome=sl_first",
      "entry": 4933.088,
      "stop": 4966.545,
      "target": 4832.717,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T16:20:00Z",
      "outcome_time": "2026-02-12T16:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4878.5,
          "impulse_high": 4966.545,
          "fib_entry_level": "62%",
          "entry": 4933.0879,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-12T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-12T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4922.832, planned_rr=3.0, touch=2026-02-12T18:05:00Z, outcome=sl_first",
      "entry": 4922.832,
      "stop": 4894.22,
      "target": 5008.668,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-12T18:05:00Z",
      "outcome_time": "2026-02-12T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-12T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-12",
        "timestamp": "2026-02-12T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4894.22,
          "impulse_high": 4969.515,
          "fib_entry_level": "62%",
          "entry": 4922.8321000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5095.915,
            "PDL": 4878.5,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4931.43, planned_rr=2.0, touch=2026-02-13T00:05:00Z, outcome=tp_first",
      "entry": 4931.43,
      "stop": 4913.86,
      "target": 4966.57,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-13T00:05:00Z",
      "outcome_time": "2026-02-13T01:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4913.86,
          "impulse_high": 4949.0,
          "fib_entry_level": "50%",
          "entry": 4931.43,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4920.5,
              "high": 4934.725,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4926.84,
              "high": 4945.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4927.213, planned_rr=3.0, touch=2026-02-13T00:05:00Z, outcome=tp_first",
      "entry": 4927.213,
      "stop": 4913.86,
      "target": 4967.273,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T00:05:00Z",
      "outcome_time": "2026-02-13T01:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4913.86,
          "impulse_high": 4949.0,
          "fib_entry_level": "62%",
          "entry": 4927.2132,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4920.5,
              "high": 4934.725,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4926.84,
              "high": 4945.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4938.112, planned_rr=3.0, touch=2026-02-13T01:00:00Z, outcome=sl_first",
      "entry": 4938.112,
      "stop": 4945.02,
      "target": 4917.386,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T01:00:00Z",
      "outcome_time": "2026-02-13T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4926.84,
          "impulse_high": 4945.02,
          "fib_entry_level": "62%",
          "entry": 4938.1116,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4969.917, planned_rr=2.0, touch=2026-02-13T05:35:00Z, outcome=tp_first",
      "entry": 4969.917,
      "stop": 4980.315,
      "target": 4949.122,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-13T05:35:00Z",
      "outcome_time": "2026-02-13T05:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4959.52,
          "impulse_high": 4980.315,
          "fib_entry_level": "50%",
          "entry": 4969.9175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4964.915,
              "high": 4986.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4972.413, planned_rr=3.0, touch=2026-02-13T05:35:00Z, outcome=tp_first",
      "entry": 4972.413,
      "stop": 4980.315,
      "target": 4948.707,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T05:35:00Z",
      "outcome_time": "2026-02-13T05:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4959.52,
          "impulse_high": 4980.315,
          "fib_entry_level": "62%",
          "entry": 4972.4129,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4964.915,
              "high": 4986.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4957.903, planned_rr=3.0, touch=2026-02-13T05:50:00Z, outcome=sl_first",
      "entry": 4957.903,
      "stop": 4965.855,
      "target": 4934.049,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T05:50:00Z",
      "outcome_time": "2026-02-13T06:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4944.93,
          "impulse_high": 4965.855,
          "fib_entry_level": "62%",
          "entry": 4957.903499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4952.179, planned_rr=3.0, touch=2026-02-13T06:05:00Z, outcome=tp_first",
      "entry": 4952.179,
      "stop": 4946.135,
      "target": 4970.311,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T06:05:00Z",
      "outcome_time": "2026-02-13T07:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4946.135,
          "impulse_high": 4962.04,
          "fib_entry_level": "62%",
          "entry": 4952.1789,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4957.802, planned_rr=3.0, touch=2026-02-13T06:50:00Z, outcome=tp_first",
      "entry": 4957.802,
      "stop": 4951.015,
      "target": 4978.162,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T06:50:00Z",
      "outcome_time": "2026-02-13T07:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4951.015,
          "impulse_high": 4968.875,
          "fib_entry_level": "62%",
          "entry": 4957.8018,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4975.383, planned_rr=3.0, touch=2026-02-13T09:25:00Z, outcome=tp_first",
      "entry": 4975.383,
      "stop": 4982.09,
      "target": 4955.262,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T09:25:00Z",
      "outcome_time": "2026-02-13T10:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4964.44,
          "impulse_high": 4982.09,
          "fib_entry_level": "62%",
          "entry": 4975.383,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4974.06,
              "high": 4976.575,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4958.805, planned_rr=2.0, touch=2026-02-13T10:55:00Z, outcome=tp_first",
      "entry": 4958.805,
      "stop": 4970.44,
      "target": 4935.535,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-13T10:55:00Z",
      "outcome_time": "2026-02-13T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4947.17,
          "impulse_high": 4970.44,
          "fib_entry_level": "50%",
          "entry": 4958.805,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4953.95,
              "high": 4967.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4961.597, planned_rr=3.0, touch=2026-02-13T10:55:00Z, outcome=tp_first",
      "entry": 4961.597,
      "stop": 4970.44,
      "target": 4935.07,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-13T10:55:00Z",
      "outcome_time": "2026-02-13T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4947.17,
          "impulse_high": 4970.44,
          "fib_entry_level": "62%",
          "entry": 4961.5974,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4953.95,
              "high": 4967.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4958.54, planned_rr=2.0, touch=2026-02-13T12:05:00Z, outcome=tp_first",
      "entry": 4958.54,
      "stop": 4952.235,
      "target": 4971.15,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-13T12:05:00Z",
      "outcome_time": "2026-02-13T12:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4952.235,
          "impulse_high": 4964.845,
          "fib_entry_level": "50%",
          "entry": 4958.54,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4955.51,
              "high": 4962.78,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4957.71,
              "high": 4970.97,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4979.352, planned_rr=3.0, touch=2026-02-13T13:45:00Z, outcome=sl_first",
      "entry": 4979.352,
      "stop": 4966.89,
      "target": 5016.738,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T13:45:00Z",
      "outcome_time": "2026-02-13T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4966.89,
          "impulse_high": 4999.685,
          "fib_entry_level": "62%",
          "entry": 4979.3521,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4990.771, planned_rr=3.0, touch=2026-02-13T14:05:00Z, outcome=sl_first",
      "entry": 4990.771,
      "stop": 4984.925,
      "target": 5008.31,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T14:05:00Z",
      "outcome_time": "2026-02-13T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4984.925,
          "impulse_high": 5000.31,
          "fib_entry_level": "62%",
          "entry": 4990.7713,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4993.267, planned_rr=3.0, touch=2026-02-13T14:35:00Z, outcome=sl_first",
      "entry": 4993.267,
      "stop": 5011.07,
      "target": 4939.858,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T14:35:00Z",
      "outcome_time": "2026-02-13T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4964.22,
          "impulse_high": 5011.07,
          "fib_entry_level": "62%",
          "entry": 4993.267,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T14-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-02-13T14:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=5001.372, planned_rr=2.0, touch=2026-02-13T14:35:00Z, outcome=tp_first",
      "entry": 5001.372,
      "stop": 5011.07,
      "target": 4981.977,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-13T14:35:00Z",
      "outcome_time": "2026-02-13T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T14-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5011.07,
          "entry": 5001.3724999999995,
          "stop": 5011.07,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4997.89,
              "high": 5004.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T14-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-13T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4991.88, planned_rr=2.0, touch=2026-02-13T14:35:00Z, outcome=sl_first",
      "entry": 4991.88,
      "stop": 5011.07,
      "target": 4953.5,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T14:35:00Z",
      "outcome_time": "2026-02-13T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T14-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5011.07,
          "entry": 4991.88,
          "stop": 5011.07,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4996.566, planned_rr=3.0, touch=2026-02-13T15:50:00Z, outcome=sl_first",
      "entry": 4996.566,
      "stop": 5010.375,
      "target": 4955.138,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T15:50:00Z",
      "outcome_time": "2026-02-13T16:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4974.035,
          "impulse_high": 5010.375,
          "fib_entry_level": "62%",
          "entry": 4996.5658,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-13T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5010.383, planned_rr=3.0, touch=2026-02-13T16:20:00Z, outcome=sl_first",
      "entry": 5010.383,
      "stop": 4996.07,
      "target": 5053.321,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-13T16:20:00Z",
      "outcome_time": "2026-02-16T02:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-13",
        "timestamp": "2026-02-13T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4996.07,
          "impulse_high": 5033.735,
          "fib_entry_level": "62%",
          "entry": 5010.3827,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4997.89,
              "high": 5013.445,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-15T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-15T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5026.195, planned_rr=3.0, touch=2026-02-15T23:35:00Z, outcome=sl_first",
      "entry": 5026.195,
      "stop": 5031.735,
      "target": 5009.573,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-15T23:35:00Z",
      "outcome_time": "2026-02-15T23:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-15T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-15",
        "timestamp": "2026-02-15T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5017.155,
          "impulse_high": 5031.735,
          "fib_entry_level": "62%",
          "entry": 5026.1946,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5046.48,
            "PDL": 4888.315,
            "PWH": 5119.345,
            "PWL": 4878.5
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5013.426, planned_rr=3.0, touch=2026-02-16T02:35:00Z, outcome=sl_first",
      "entry": 5013.426,
      "stop": 5006.995,
      "target": 5032.721,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T02:35:00Z",
      "outcome_time": "2026-02-16T02:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5006.995,
          "impulse_high": 5023.92,
          "fib_entry_level": "62%",
          "entry": 5013.4265,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4999.029, planned_rr=3.0, touch=2026-02-16T03:05:00Z, outcome=tp_first",
      "entry": 4999.029,
      "stop": 5003.22,
      "target": 4986.454,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-16T03:05:00Z",
      "outcome_time": "2026-02-16T03:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4992.19,
          "impulse_high": 5003.22,
          "fib_entry_level": "62%",
          "entry": 4999.0286,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T04:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4985.175, planned_rr=3.0, touch=2026-02-16T04:05:00Z, outcome=sl_first",
      "entry": 4985.175,
      "stop": 4992.38,
      "target": 4963.561,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T04:05:00Z",
      "outcome_time": "2026-02-16T06:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T04:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4973.42,
          "impulse_high": 4992.38,
          "fib_entry_level": "62%",
          "entry": 4985.1752,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T04-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-16T04:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4976.73, planned_rr=2.0, touch=2026-02-16T04:05:00Z, outcome=tp_first",
      "entry": 4976.73,
      "stop": 4973.42,
      "target": 4983.35,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-16T04:05:00Z",
      "outcome_time": "2026-02-16T04:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T04-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T04:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4973.42,
          "entry": 4976.73,
          "stop": 4973.42,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4995.377, planned_rr=3.0, touch=2026-02-16T06:35:00Z, outcome=sl_first",
      "entry": 4995.377,
      "stop": 4990.57,
      "target": 5009.798,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T06:35:00Z",
      "outcome_time": "2026-02-16T07:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4990.57,
          "impulse_high": 5003.22,
          "fib_entry_level": "62%",
          "entry": 4995.3769999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4999.629, planned_rr=3.0, touch=2026-02-16T07:30:00Z, outcome=sl_first",
      "entry": 4999.629,
      "stop": 5002.87,
      "target": 4989.904,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T07:30:00Z",
      "outcome_time": "2026-02-16T07:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4994.34,
          "impulse_high": 5002.87,
          "fib_entry_level": "62%",
          "entry": 4999.6286,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5004.526, planned_rr=3.0, touch=2026-02-16T07:55:00Z, outcome=sl_first",
      "entry": 5004.526,
      "stop": 5001.1,
      "target": 5014.803,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T07:55:00Z",
      "outcome_time": "2026-02-16T08:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5001.1,
          "impulse_high": 5010.115,
          "fib_entry_level": "62%",
          "entry": 5004.5257,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5006.931, planned_rr=3.0, touch=2026-02-16T08:05:00Z, outcome=sl_first",
      "entry": 5006.931,
      "stop": 5013.33,
      "target": 4987.733,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T08:05:00Z",
      "outcome_time": "2026-02-16T09:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4996.49,
          "impulse_high": 5013.33,
          "fib_entry_level": "62%",
          "entry": 5006.9308,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T08-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-16T08:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4998.245, planned_rr=2.0, touch=2026-02-16T08:10:00Z, outcome=sl_first",
      "entry": 4998.245,
      "stop": 5013.33,
      "target": 4968.075,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T08:10:00Z",
      "outcome_time": "2026-02-16T09:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T08-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5013.33,
          "entry": 4998.245,
          "stop": 5013.33,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5000.008, planned_rr=3.0, touch=2026-02-16T11:10:00Z, outcome=sl_first",
      "entry": 5000.008,
      "stop": 4995.86,
      "target": 5012.451,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T11:10:00Z",
      "outcome_time": "2026-02-16T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4995.86,
          "impulse_high": 5006.775,
          "fib_entry_level": "62%",
          "entry": 5000.0077,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5001.368, planned_rr=2.0, touch=2026-02-16T12:05:00Z, outcome=tp_first",
      "entry": 5001.368,
      "stop": 5005.145,
      "target": 4993.812,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-16T12:05:00Z",
      "outcome_time": "2026-02-16T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4997.59,
          "impulse_high": 5005.145,
          "fib_entry_level": "50%",
          "entry": 5001.3675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4999.575,
              "high": 5002.17,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5002.274, planned_rr=3.0, touch=2026-02-16T12:05:00Z, outcome=tp_first",
      "entry": 5002.274,
      "stop": 5005.145,
      "target": 4993.661,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-16T12:05:00Z",
      "outcome_time": "2026-02-16T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4997.59,
          "impulse_high": 5005.145,
          "fib_entry_level": "62%",
          "entry": 5002.2741000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5000.145, planned_rr=3.0, touch=2026-02-16T12:50:00Z, outcome=sl_first",
      "entry": 5000.145,
      "stop": 4995.215,
      "target": 5014.937,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T12:50:00Z",
      "outcome_time": "2026-02-16T13:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4995.215,
          "impulse_high": 5008.19,
          "fib_entry_level": "62%",
          "entry": 5000.1455,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4981.138, planned_rr=3.0, touch=2026-02-16T15:20:00Z, outcome=sl_first",
      "entry": 4981.138,
      "stop": 4988.51,
      "target": 4959.022,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T15:20:00Z",
      "outcome_time": "2026-02-16T16:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4969.11,
          "impulse_high": 4988.51,
          "fib_entry_level": "62%",
          "entry": 4981.138,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-16T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4994.573, planned_rr=3.0, touch=2026-02-16T23:10:00Z, outcome=sl_first",
      "entry": 4994.573,
      "stop": 4999.65,
      "target": 4979.343,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T23:10:00Z",
      "outcome_time": "2026-02-16T23:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4986.29,
          "impulse_high": 4999.65,
          "fib_entry_level": "62%",
          "entry": 4994.5732,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T23-00-00Z_short_breaker_continuation",
      "timestamp": "2026-02-16T23:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4985.358, planned_rr=2.0, touch=2026-02-16T23:15:00Z, outcome=sl_first",
      "entry": 4985.358,
      "stop": 4999.65,
      "target": 4956.773,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T23:15:00Z",
      "outcome_time": "2026-02-16T23:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T23-00-00Z_short_breaker_continuation",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4999.65,
          "entry": 4985.3575,
          "stop": 4999.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4981.755,
              "high": 4988.96,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4951.465,
              "high": 4968.73,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T23-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-02-16T23:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4985.358, planned_rr=2.0, touch=2026-02-16T23:15:00Z, outcome=sl_first",
      "entry": 4985.358,
      "stop": 4999.65,
      "target": 4956.773,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T23:15:00Z",
      "outcome_time": "2026-02-16T23:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T23-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4999.65,
          "entry": 4985.3575,
          "stop": 4999.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4981.755,
              "high": 4988.96,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4951.465,
              "high": 4968.73,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-16T23-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-02-16T23:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4991.07, planned_rr=2.0, touch=2026-02-16T23:10:00Z, outcome=sl_first",
      "entry": 4991.07,
      "stop": 4999.65,
      "target": 4973.91,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-16T23:10:00Z",
      "outcome_time": "2026-02-16T23:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-16T23-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-02-16",
        "timestamp": "2026-02-16T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4999.65,
          "entry": 4991.07,
          "stop": 4999.65,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5032.565,
            "PDL": 4964.865,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4977.723, planned_rr=3.0, touch=2026-02-17T00:20:00Z, outcome=tp_first",
      "entry": 4977.723,
      "stop": 4981.755,
      "target": 4965.628,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-17T00:20:00Z",
      "outcome_time": "2026-02-17T00:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4971.145,
          "impulse_high": 4981.755,
          "fib_entry_level": "62%",
          "entry": 4977.7232,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4955.947, planned_rr=3.0, touch=2026-02-17T00:50:00Z, outcome=sl_first",
      "entry": 4955.947,
      "stop": 4970.48,
      "target": 4912.348,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T00:50:00Z",
      "outcome_time": "2026-02-17T02:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4932.235,
          "impulse_high": 4970.48,
          "fib_entry_level": "62%",
          "entry": 4955.9469,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4951.465,
              "high": 4968.73,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4908.29, planned_rr=2.0, touch=2026-02-17T06:35:00Z, outcome=sl_first",
      "entry": 4908.29,
      "stop": 4928.315,
      "target": 4868.24,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T06:35:00Z",
      "outcome_time": "2026-02-17T08:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4888.265,
          "impulse_high": 4928.315,
          "fib_entry_level": "50%",
          "entry": 4908.29,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4902.555,
              "high": 4927.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4913.096, planned_rr=3.0, touch=2026-02-17T06:40:00Z, outcome=sl_first",
      "entry": 4913.096,
      "stop": 4928.315,
      "target": 4867.439,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T06:40:00Z",
      "outcome_time": "2026-02-17T08:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4888.265,
          "impulse_high": 4928.315,
          "fib_entry_level": "62%",
          "entry": 4913.096,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4902.555,
              "high": 4927.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4886.08, planned_rr=3.0, touch=2026-02-17T05:35:00Z, outcome=sl_first",
      "entry": 4886.08,
      "stop": 4902.555,
      "target": 4836.655,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T05:35:00Z",
      "outcome_time": "2026-02-17T06:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4859.2,
          "impulse_high": 4902.555,
          "fib_entry_level": "62%",
          "entry": 4886.0801,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4917.2, planned_rr=3.0, touch=2026-02-17T10:50:00Z, outcome=sl_first",
      "entry": 4917.2,
      "stop": 4922.91,
      "target": 4900.072,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T10:50:00Z",
      "outcome_time": "2026-02-17T11:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4907.885,
          "impulse_high": 4922.91,
          "fib_entry_level": "62%",
          "entry": 4917.2005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T12-15-00Z_short_breaker_continuation",
      "timestamp": "2026-02-17T12:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4925.6, planned_rr=2.0, touch=2026-02-17T13:05:00Z, outcome=tp_first",
      "entry": 4925.6,
      "stop": 4944.7,
      "target": 4887.4,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-17T13:05:00Z",
      "outcome_time": "2026-02-17T13:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T12-15-00Z_short_breaker_continuation",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4944.7,
          "entry": 4925.6,
          "stop": 4944.7,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4922.91,
              "high": 4928.29,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4923.21,
              "high": 4929.03,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4903.854, planned_rr=3.0, touch=2026-02-17T13:55:00Z, outcome=sl_first",
      "entry": 4903.854,
      "stop": 4924.625,
      "target": 4841.542,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T13:55:00Z",
      "outcome_time": "2026-02-18T04:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4869.965,
          "impulse_high": 4924.625,
          "fib_entry_level": "62%",
          "entry": 4903.8542,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4899.925,
              "high": 4908.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4887.325, planned_rr=2.0, touch=2026-02-17T14:35:00Z, outcome=sl_first",
      "entry": 4887.325,
      "stop": 4907.235,
      "target": 4847.505,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T14:35:00Z",
      "outcome_time": "2026-02-17T18:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4867.415,
          "impulse_high": 4907.235,
          "fib_entry_level": "50%",
          "entry": 4887.325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4880.77,
              "high": 4889.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4892.103, planned_rr=3.0, touch=2026-02-17T14:35:00Z, outcome=sl_first",
      "entry": 4892.103,
      "stop": 4907.235,
      "target": 4846.709,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T14:35:00Z",
      "outcome_time": "2026-02-17T18:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4867.415,
          "impulse_high": 4907.235,
          "fib_entry_level": "62%",
          "entry": 4892.1034,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4872.742, planned_rr=3.0, touch=2026-02-17T23:05:00Z, outcome=sl_first",
      "entry": 4872.742,
      "stop": 4865.805,
      "target": 4893.553,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T23:05:00Z",
      "outcome_time": "2026-02-17T23:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4865.805,
          "impulse_high": 4884.06,
          "fib_entry_level": "62%",
          "entry": 4872.7419,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T23-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-17T23:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4883.19, planned_rr=2.0, touch=2026-02-17T23:10:00Z, outcome=sl_first",
      "entry": 4883.19,
      "stop": 4865.805,
      "target": 4917.96,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-17T23:10:00Z",
      "outcome_time": "2026-02-17T23:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T23-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4865.805,
          "entry": 4883.19,
          "stop": 4865.805,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-17T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4868.478, planned_rr=3.0, touch=2026-02-18T00:00:00Z, outcome=sl_first",
      "entry": 4868.478,
      "stop": 4877.205,
      "target": 4842.298,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T00:00:00Z",
      "outcome_time": "2026-02-18T00:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4854.24,
          "impulse_high": 4877.205,
          "fib_entry_level": "62%",
          "entry": 4868.4783,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-17T23-45-00Z_long_breaker_continuation",
      "timestamp": "2026-02-17T23:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4877.917, planned_rr=2.0, touch=2026-02-18T00:30:00Z, outcome=tp_first",
      "entry": 4877.917,
      "stop": 4854.24,
      "target": 4925.272,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T00:30:00Z",
      "outcome_time": "2026-02-18T04:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-17T23-45-00Z_long_breaker_continuation",
        "date": "2026-02-17",
        "timestamp": "2026-02-17T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4854.24,
          "entry": 4877.9175,
          "stop": 4854.24,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4872.435,
              "high": 4883.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5001.24,
            "PDL": 4842.6,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4874.95, planned_rr=2.0, touch=2026-02-18T00:35:00Z, outcome=tp_first",
      "entry": 4874.95,
      "stop": 4867.865,
      "target": 4889.12,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T00:35:00Z",
      "outcome_time": "2026-02-18T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4867.865,
          "impulse_high": 4882.035,
          "fib_entry_level": "50%",
          "entry": 4874.95,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4872.435,
              "high": 4883.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4873.25, planned_rr=3.0, touch=2026-02-18T00:55:00Z, outcome=tp_first",
      "entry": 4873.25,
      "stop": 4867.865,
      "target": 4889.403,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-18T00:55:00Z",
      "outcome_time": "2026-02-18T01:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4867.865,
          "impulse_high": 4882.035,
          "fib_entry_level": "62%",
          "entry": 4873.2496,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4872.435,
              "high": 4883.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4883.067, planned_rr=2.0, touch=2026-02-18T01:05:00Z, outcome=tp_first",
      "entry": 4883.067,
      "stop": 4874.65,
      "target": 4899.902,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T01:05:00Z",
      "outcome_time": "2026-02-18T02:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4874.65,
          "impulse_high": 4891.485,
          "fib_entry_level": "50%",
          "entry": 4883.067499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4872.435,
              "high": 4883.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4931.17, planned_rr=3.0, touch=2026-02-18T06:05:00Z, outcome=sl_first",
      "entry": 4931.17,
      "stop": 4934.335,
      "target": 4921.673,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T06:05:00Z",
      "outcome_time": "2026-02-18T06:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4926.005,
          "impulse_high": 4934.335,
          "fib_entry_level": "62%",
          "entry": 4931.1696,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4934.796, planned_rr=3.0, touch=2026-02-18T07:05:00Z, outcome=sl_first",
      "entry": 4934.796,
      "stop": 4930.08,
      "target": 4948.943,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T07:05:00Z",
      "outcome_time": "2026-02-18T07:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4930.08,
          "impulse_high": 4942.49,
          "fib_entry_level": "62%",
          "entry": 4934.7958,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T07-00-00Z_short_breaker_continuation",
      "timestamp": "2026-02-18T07:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4933.1, planned_rr=2.0, touch=2026-02-18T07:20:00Z, outcome=tp_first",
      "entry": 4933.1,
      "stop": 4942.49,
      "target": 4914.32,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T07:20:00Z",
      "outcome_time": "2026-02-18T09:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T07-00-00Z_short_breaker_continuation",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4942.49,
          "entry": 4933.1,
          "stop": 4942.49,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4932.925,
              "high": 4933.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4924.316, planned_rr=3.0, touch=2026-02-18T08:35:00Z, outcome=sl_first",
      "entry": 4924.316,
      "stop": 4927.17,
      "target": 4915.755,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T08:35:00Z",
      "outcome_time": "2026-02-18T08:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4919.66,
          "impulse_high": 4927.17,
          "fib_entry_level": "62%",
          "entry": 4924.3162,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4917.164, planned_rr=3.0, touch=2026-02-18T09:20:00Z, outcome=sl_first",
      "entry": 4917.164,
      "stop": 4913.415,
      "target": 4928.41,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T09:20:00Z",
      "outcome_time": "2026-02-18T10:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4913.415,
          "impulse_high": 4923.28,
          "fib_entry_level": "62%",
          "entry": 4917.1637,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4919.215, planned_rr=2.0, touch=2026-02-18T12:05:00Z, outcome=tp_first",
      "entry": 4919.215,
      "stop": 4912.12,
      "target": 4933.405,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T12:05:00Z",
      "outcome_time": "2026-02-18T12:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4912.12,
          "impulse_high": 4926.31,
          "fib_entry_level": "50%",
          "entry": 4919.215,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4916.05,
              "high": 4921.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4951.023, planned_rr=2.0, touch=2026-02-18T13:05:00Z, outcome=tp_first",
      "entry": 4951.023,
      "stop": 4943.2,
      "target": 4966.668,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T13:05:00Z",
      "outcome_time": "2026-02-18T13:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4943.2,
          "impulse_high": 4958.845,
          "fib_entry_level": "50%",
          "entry": 4951.0225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4947.105,
              "high": 4952.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4949.145, planned_rr=3.0, touch=2026-02-18T13:05:00Z, outcome=tp_first",
      "entry": 4949.145,
      "stop": 4943.2,
      "target": 4966.98,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-18T13:05:00Z",
      "outcome_time": "2026-02-18T13:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4943.2,
          "impulse_high": 4958.845,
          "fib_entry_level": "62%",
          "entry": 4949.1451,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4947.105,
              "high": 4952.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4999.835, planned_rr=2.0, touch=2026-02-18T15:05:00Z, outcome=sl_first",
      "entry": 4999.835,
      "stop": 4991.49,
      "target": 5016.525,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T15:05:00Z",
      "outcome_time": "2026-02-18T16:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4991.49,
          "impulse_high": 5008.18,
          "fib_entry_level": "50%",
          "entry": 4999.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4994.51,
              "high": 5000.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4997.832, planned_rr=3.0, touch=2026-02-18T15:05:00Z, outcome=sl_first",
      "entry": 4997.832,
      "stop": 4991.49,
      "target": 5016.859,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T15:05:00Z",
      "outcome_time": "2026-02-18T16:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4991.49,
          "impulse_high": 5008.18,
          "fib_entry_level": "62%",
          "entry": 4997.8322,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4994.51,
              "high": 5000.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4993.052, planned_rr=2.0, touch=2026-02-18T18:25:00Z, outcome=tp_first",
      "entry": 4993.052,
      "stop": 4999.38,
      "target": 4980.397,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-18T18:25:00Z",
      "outcome_time": "2026-02-18T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4986.725,
          "impulse_high": 4999.38,
          "fib_entry_level": "50%",
          "entry": 4993.0525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4984.18,
              "high": 4994.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4994.571, planned_rr=3.0, touch=2026-02-18T18:20:00Z, outcome=tp_first",
      "entry": 4994.571,
      "stop": 4999.38,
      "target": 4980.144,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-18T18:20:00Z",
      "outcome_time": "2026-02-18T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4986.725,
          "impulse_high": 4999.38,
          "fib_entry_level": "62%",
          "entry": 4994.5711,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4993.225,
              "high": 4997.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T19:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4984.215, planned_rr=2.0, touch=2026-02-18T19:25:00Z, outcome=sl_first",
      "entry": 4984.215,
      "stop": 4995.56,
      "target": 4961.525,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T19:25:00Z",
      "outcome_time": "2026-02-18T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T19:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4972.87,
          "impulse_high": 4995.56,
          "fib_entry_level": "50%",
          "entry": 4984.215,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4984.18,
              "high": 4994.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T19:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4986.938, planned_rr=3.0, touch=2026-02-18T19:25:00Z, outcome=sl_first",
      "entry": 4986.938,
      "stop": 4995.56,
      "target": 4961.071,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T19:25:00Z",
      "outcome_time": "2026-02-18T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T19:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4972.87,
          "impulse_high": 4995.56,
          "fib_entry_level": "62%",
          "entry": 4986.937800000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4984.18,
              "high": 4994.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-18T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-18T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4980.915, planned_rr=3.0, touch=2026-02-18T20:35:00Z, outcome=sl_first",
      "entry": 4980.915,
      "stop": 4976.845,
      "target": 4993.124,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-18T20:35:00Z",
      "outcome_time": "2026-02-18T21:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-18T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-18",
        "timestamp": "2026-02-18T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4976.845,
          "impulse_high": 4987.555,
          "fib_entry_level": "62%",
          "entry": 4980.9148000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5010.915,
            "PDL": 4854.24,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4989.068, planned_rr=2.0, touch=2026-02-19T05:05:00Z, outcome=tp_first",
      "entry": 4989.068,
      "stop": 4984.42,
      "target": 4998.363,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-19T05:05:00Z",
      "outcome_time": "2026-02-19T05:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4984.42,
          "impulse_high": 4993.715,
          "fib_entry_level": "50%",
          "entry": 4989.0675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4987.73,
              "high": 4990.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4987.952, planned_rr=3.0, touch=2026-02-19T05:05:00Z, outcome=tp_first",
      "entry": 4987.952,
      "stop": 4984.42,
      "target": 4998.548,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-19T05:05:00Z",
      "outcome_time": "2026-02-19T05:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4984.42,
          "impulse_high": 4993.715,
          "fib_entry_level": "62%",
          "entry": 4987.9521,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4987.73,
              "high": 4990.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5005.958, planned_rr=2.0, touch=2026-02-19T09:25:00Z, outcome=sl_first",
      "entry": 5005.958,
      "stop": 5001.15,
      "target": 5015.573,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T09:25:00Z",
      "outcome_time": "2026-02-19T09:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5001.15,
          "impulse_high": 5010.765,
          "fib_entry_level": "50%",
          "entry": 5005.9575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5002.465,
              "high": 5009.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5004.804, planned_rr=3.0, touch=2026-02-19T09:25:00Z, outcome=sl_first",
      "entry": 5004.804,
      "stop": 5001.15,
      "target": 5015.765,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T09:25:00Z",
      "outcome_time": "2026-02-19T09:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5001.15,
          "impulse_high": 5010.765,
          "fib_entry_level": "62%",
          "entry": 5004.8036999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5002.465,
              "high": 5009.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5014.81, planned_rr=2.0, touch=2026-02-19T06:50:00Z, outcome=sl_first",
      "entry": 5014.81,
      "stop": 5009.33,
      "target": 5025.77,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T06:50:00Z",
      "outcome_time": "2026-02-19T07:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5009.33,
          "impulse_high": 5020.29,
          "fib_entry_level": "50%",
          "entry": 5014.8099999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5010.765,
              "high": 5016.79,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5013.495, planned_rr=3.0, touch=2026-02-19T07:55:00Z, outcome=sl_first",
      "entry": 5013.495,
      "stop": 5009.33,
      "target": 5025.989,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T07:55:00Z",
      "outcome_time": "2026-02-19T07:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5009.33,
          "impulse_high": 5020.29,
          "fib_entry_level": "62%",
          "entry": 5013.4948,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5010.765,
              "high": 5016.79,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4988.277, planned_rr=3.0, touch=2026-02-19T11:20:00Z, outcome=sl_first",
      "entry": 4988.277,
      "stop": 4994.57,
      "target": 4969.399,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T11:20:00Z",
      "outcome_time": "2026-02-19T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4978.01,
          "impulse_high": 4994.57,
          "fib_entry_level": "62%",
          "entry": 4988.2771999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4987.315,
              "high": 4989.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4984.205, planned_rr=2.0, touch=2026-02-19T14:05:00Z, outcome=sl_first",
      "entry": 4984.205,
      "stop": 4971.125,
      "target": 5010.365,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T14:05:00Z",
      "outcome_time": "2026-02-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4971.125,
          "impulse_high": 4997.285,
          "fib_entry_level": "50%",
          "entry": 4984.205,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4982.57,
              "high": 4987.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4981.066, planned_rr=3.0, touch=2026-02-19T14:05:00Z, outcome=sl_first",
      "entry": 4981.066,
      "stop": 4971.125,
      "target": 5010.888,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T14:05:00Z",
      "outcome_time": "2026-02-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4971.125,
          "impulse_high": 4997.285,
          "fib_entry_level": "62%",
          "entry": 4981.0658,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4989.63, planned_rr=2.0, touch=2026-02-19T13:35:00Z, outcome=sl_first",
      "entry": 4989.63,
      "stop": 4971.125,
      "target": 5026.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T13:35:00Z",
      "outcome_time": "2026-02-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_long_breaker_continuation",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4971.125,
          "entry": 4989.63,
          "stop": 4971.125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4987.755,
              "high": 4991.505,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_short_breaker_continuation",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4988.333, planned_rr=2.0, touch=2026-02-19T13:35:00Z, outcome=sl_first",
      "entry": 4988.333,
      "stop": 4997.285,
      "target": 4970.428,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T13:35:00Z",
      "outcome_time": "2026-02-19T13:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_short_breaker_continuation",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4997.285,
          "entry": 4988.3325,
          "stop": 4997.285,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4987.315,
              "high": 4989.35,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4982.57,
              "high": 4991.505,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4989.63, planned_rr=2.0, touch=2026-02-19T13:35:00Z, outcome=sl_first",
      "entry": 4989.63,
      "stop": 4971.125,
      "target": 5026.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T13:35:00Z",
      "outcome_time": "2026-02-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4971.125,
          "entry": 4989.63,
          "stop": 4971.125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4987.755,
              "high": 4991.505,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T13-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-19T13:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4993.805, planned_rr=2.0, touch=2026-02-19T13:35:00Z, outcome=sl_first",
      "entry": 4993.805,
      "stop": 4971.125,
      "target": 5039.165,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T13:35:00Z",
      "outcome_time": "2026-02-19T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T13-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4971.125,
          "entry": 4993.805,
          "stop": 4971.125,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4984.712, planned_rr=2.0, touch=2026-02-19T14:05:00Z, outcome=sl_first",
      "entry": 4984.712,
      "stop": 4997.165,
      "target": 4959.807,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T14:05:00Z",
      "outcome_time": "2026-02-19T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4972.26,
          "impulse_high": 4997.165,
          "fib_entry_level": "50%",
          "entry": 4984.7125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4982.57,
              "high": 4991.505,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4987.701, planned_rr=3.0, touch=2026-02-19T14:40:00Z, outcome=sl_first",
      "entry": 4987.701,
      "stop": 4997.165,
      "target": 4959.309,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T14:40:00Z",
      "outcome_time": "2026-02-19T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4972.26,
          "impulse_high": 4997.165,
          "fib_entry_level": "62%",
          "entry": 4987.7011,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4987.315,
              "high": 4989.35,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4982.57,
              "high": 4991.505,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-30-00Z_long_breaker_continuation",
      "timestamp": "2026-02-19T14:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4989.63, planned_rr=2.0, touch=2026-02-19T14:40:00Z, outcome=tp_first",
      "entry": 4989.63,
      "stop": 4963.445,
      "target": 5042.0,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-19T14:40:00Z",
      "outcome_time": "2026-02-20T09:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-30-00Z_long_breaker_continuation",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4963.445,
          "entry": 4989.63,
          "stop": 4963.445,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4987.755,
              "high": 4991.505,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-19T14:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4989.63, planned_rr=2.0, touch=2026-02-19T14:40:00Z, outcome=tp_first",
      "entry": 4989.63,
      "stop": 4963.445,
      "target": 5042.0,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-19T14:40:00Z",
      "outcome_time": "2026-02-20T09:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4963.445,
          "entry": 4989.63,
          "stop": 4963.445,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4987.755,
              "high": 4991.505,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4979.68,
              "high": 4987.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-19T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4992.505, planned_rr=2.0, touch=2026-02-19T14:40:00Z, outcome=tp_first",
      "entry": 4992.505,
      "stop": 4963.445,
      "target": 5050.625,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-19T14:40:00Z",
      "outcome_time": "2026-02-20T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4963.445,
          "entry": 4992.505,
          "stop": 4963.445,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4999.035, planned_rr=2.0, touch=2026-02-19T14:50:00Z, outcome=tp_first",
      "entry": 4999.035,
      "stop": 4987.63,
      "target": 5021.845,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-19T14:50:00Z",
      "outcome_time": "2026-02-19T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4987.63,
          "impulse_high": 5010.44,
          "fib_entry_level": "50%",
          "entry": 4999.035,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4995.39,
              "high": 4999.035,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4999.035,
              "high": 5009.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4996.298, planned_rr=3.0, touch=2026-02-19T14:50:00Z, outcome=tp_first",
      "entry": 4996.298,
      "stop": 4987.63,
      "target": 5022.301,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-19T14:50:00Z",
      "outcome_time": "2026-02-19T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4987.63,
          "impulse_high": 5010.44,
          "fib_entry_level": "62%",
          "entry": 4996.2978,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4995.39,
              "high": 4999.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5006.267, planned_rr=2.0, touch=2026-02-19T15:20:00Z, outcome=sl_first",
      "entry": 5006.267,
      "stop": 4996.095,
      "target": 5026.612,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T15:20:00Z",
      "outcome_time": "2026-02-19T16:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4996.095,
          "impulse_high": 5016.44,
          "fib_entry_level": "50%",
          "entry": 5006.2675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4999.035,
              "high": 5009.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5003.826, planned_rr=3.0, touch=2026-02-19T15:20:00Z, outcome=sl_first",
      "entry": 5003.826,
      "stop": 4996.095,
      "target": 5027.019,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-19T15:20:00Z",
      "outcome_time": "2026-02-19T16:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4996.095,
          "impulse_high": 5016.44,
          "fib_entry_level": "62%",
          "entry": 5003.8261,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4999.035,
              "high": 5009.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-19T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-19T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5000.701, planned_rr=3.0, touch=2026-02-19T16:50:00Z, outcome=tp_first",
      "entry": 5000.701,
      "stop": 5007.125,
      "target": 4981.429,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-19T16:50:00Z",
      "outcome_time": "2026-02-19T18:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-19T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-19",
        "timestamp": "2026-02-19T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4990.22,
          "impulse_high": 5007.125,
          "fib_entry_level": "62%",
          "entry": 5000.7011,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5022.385,
            "PDL": 4960.645,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T00-00-00Z_long_breaker_continuation",
      "timestamp": "2026-02-20T00:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5001.24, planned_rr=2.0, touch=2026-02-20T00:50:00Z, outcome=sl_first",
      "entry": 5001.24,
      "stop": 4985.435,
      "target": 5032.85,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T00:50:00Z",
      "outcome_time": "2026-02-20T03:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T00-00-00Z_long_breaker_continuation",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4985.435,
          "entry": 5001.24,
          "stop": 4985.435,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4996.44,
              "high": 5006.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T00-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-20T00:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5001.24, planned_rr=2.0, touch=2026-02-20T00:50:00Z, outcome=sl_first",
      "entry": 5001.24,
      "stop": 4985.435,
      "target": 5032.85,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T00:50:00Z",
      "outcome_time": "2026-02-20T03:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T00-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4985.435,
          "entry": 5001.24,
          "stop": 4985.435,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4996.44,
              "high": 5006.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T00-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-20T00:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4993.615, planned_rr=2.0, touch=2026-02-20T00:05:00Z, outcome=tp_first",
      "entry": 4993.615,
      "stop": 4985.435,
      "target": 5009.975,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-20T00:05:00Z",
      "outcome_time": "2026-02-20T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T00-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4985.435,
          "entry": 4993.615,
          "stop": 4985.435,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5000.425, planned_rr=2.0, touch=2026-02-20T00:50:00Z, outcome=tp_first",
      "entry": 5000.425,
      "stop": 4993.665,
      "target": 5013.945,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-20T00:50:00Z",
      "outcome_time": "2026-02-20T01:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4993.665,
          "impulse_high": 5007.185,
          "fib_entry_level": "50%",
          "entry": 5000.425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4996.44,
              "high": 5006.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4998.803, planned_rr=3.0, touch=2026-02-20T00:50:00Z, outcome=tp_first",
      "entry": 4998.803,
      "stop": 4993.665,
      "target": 5014.215,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-20T00:50:00Z",
      "outcome_time": "2026-02-20T01:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4993.665,
          "impulse_high": 5007.185,
          "fib_entry_level": "62%",
          "entry": 4998.8026,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4996.44,
              "high": 5006.04,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5009.394, planned_rr=3.0, touch=2026-02-20T01:15:00Z, outcome=sl_first",
      "entry": 5009.394,
      "stop": 5006.04,
      "target": 5019.454,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T01:15:00Z",
      "outcome_time": "2026-02-20T01:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5006.04,
          "impulse_high": 5014.865,
          "fib_entry_level": "62%",
          "entry": 5009.3935,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5005.298, planned_rr=2.0, touch=2026-02-20T08:10:00Z, outcome=tp_first",
      "entry": 5005.298,
      "stop": 4998.41,
      "target": 5019.073,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-20T08:10:00Z",
      "outcome_time": "2026-02-20T08:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4998.41,
          "impulse_high": 5012.185,
          "fib_entry_level": "50%",
          "entry": 5005.297500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5004.9,
              "high": 5011.89,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5021.519, planned_rr=3.0, touch=2026-02-20T06:20:00Z, outcome=sl_first",
      "entry": 5021.519,
      "stop": 5016.435,
      "target": 5036.773,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T06:20:00Z",
      "outcome_time": "2026-02-20T07:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5016.435,
          "impulse_high": 5029.815,
          "fib_entry_level": "62%",
          "entry": 5021.5194,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5023.521, planned_rr=3.0, touch=2026-02-20T06:35:00Z, outcome=sl_first",
      "entry": 5023.521,
      "stop": 5020.62,
      "target": 5032.225,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T06:35:00Z",
      "outcome_time": "2026-02-20T06:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5020.62,
          "impulse_high": 5028.255,
          "fib_entry_level": "62%",
          "entry": 5023.5213,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5033.051, planned_rr=3.0, touch=2026-02-20T09:05:00Z, outcome=sl_first",
      "entry": 5033.051,
      "stop": 5028.24,
      "target": 5047.483,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T09:05:00Z",
      "outcome_time": "2026-02-20T09:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5028.24,
          "impulse_high": 5040.9,
          "fib_entry_level": "62%",
          "entry": 5033.0508,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5031.215,
              "high": 5033.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T12-15-00Z_long_breaker_continuation",
      "timestamp": "2026-02-20T12:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5034.685, planned_rr=2.0, touch=2026-02-20T13:45:00Z, outcome=sl_first",
      "entry": 5034.685,
      "stop": 5011.73,
      "target": 5080.595,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T13:45:00Z",
      "outcome_time": "2026-02-20T15:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T12-15-00Z_long_breaker_continuation",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5011.73,
          "entry": 5034.685,
          "stop": 5011.73,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5032.06,
              "high": 5037.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5014.298, planned_rr=3.0, touch=2026-02-20T15:05:00Z, outcome=sl_first",
      "entry": 5014.298,
      "stop": 5007.285,
      "target": 5035.337,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T15:05:00Z",
      "outcome_time": "2026-02-20T15:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5007.285,
          "impulse_high": 5025.74,
          "fib_entry_level": "62%",
          "entry": 5014.2979,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T12-30-00Z_long_breaker_continuation",
      "timestamp": "2026-02-20T12:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5034.685, planned_rr=2.0, touch=2026-02-20T13:45:00Z, outcome=sl_first",
      "entry": 5034.685,
      "stop": 5007.285,
      "target": 5089.485,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T13:45:00Z",
      "outcome_time": "2026-02-20T15:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T12-30-00Z_long_breaker_continuation",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5007.285,
          "entry": 5034.685,
          "stop": 5007.285,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5032.06,
              "high": 5037.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T12-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-20T12:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5034.685, planned_rr=2.0, touch=2026-02-20T13:45:00Z, outcome=sl_first",
      "entry": 5034.685,
      "stop": 5007.285,
      "target": 5089.485,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T13:45:00Z",
      "outcome_time": "2026-02-20T15:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T12-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 5007.285,
          "entry": 5034.685,
          "stop": 5007.285,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5032.06,
              "high": 5037.31,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5039.917, planned_rr=2.0, touch=2026-02-20T14:00:00Z, outcome=tp_first",
      "entry": 5039.917,
      "stop": 5030.95,
      "target": 5057.852,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-20T14:00:00Z",
      "outcome_time": "2026-02-20T14:45:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5030.95,
          "impulse_high": 5048.885,
          "fib_entry_level": "50%",
          "entry": 5039.9175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5038.865,
              "high": 5044.915,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5037.765, planned_rr=3.0, touch=2026-02-20T14:05:00Z, outcome=tp_first",
      "entry": 5037.765,
      "stop": 5030.95,
      "target": 5058.211,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-20T14:05:00Z",
      "outcome_time": "2026-02-20T14:45:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5030.95,
          "impulse_high": 5048.885,
          "fib_entry_level": "62%",
          "entry": 5037.7653,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5046.075, planned_rr=2.0, touch=2026-02-20T14:35:00Z, outcome=ambiguous_same_bar",
      "entry": 5046.075,
      "stop": 5037.74,
      "target": 5062.745,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-02-20T14:35:00Z",
      "outcome_time": "2026-02-20T15:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5037.74,
          "impulse_high": 5054.41,
          "fib_entry_level": "50%",
          "entry": 5046.075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5044.915,
              "high": 5048.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5044.075, planned_rr=3.0, touch=2026-02-20T14:35:00Z, outcome=ambiguous_same_bar",
      "entry": 5044.075,
      "stop": 5037.74,
      "target": 5063.078,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-02-20T14:35:00Z",
      "outcome_time": "2026-02-20T15:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5037.74,
          "impulse_high": 5054.41,
          "fib_entry_level": "62%",
          "entry": 5044.0746,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5038.865,
              "high": 5044.915,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T15-00-00Z_long_breaker_continuation",
      "timestamp": "2026-02-20T15:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=5034.685, planned_rr=2.0, touch=2026-02-20T15:15:00Z, outcome=tp_first",
      "entry": 5034.685,
      "stop": 4990.585,
      "target": 5122.885,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-20T15:15:00Z",
      "outcome_time": "2026-02-22T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T15-00-00Z_long_breaker_continuation",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4990.585,
          "entry": 5034.685,
          "stop": 4990.585,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5032.06,
              "high": 5037.31,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5044.915,
              "high": 5048.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5047.413, planned_rr=2.0, touch=2026-02-20T16:05:00Z, outcome=sl_first",
      "entry": 5047.413,
      "stop": 5038.835,
      "target": 5064.568,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T16:05:00Z",
      "outcome_time": "2026-02-20T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5038.835,
          "impulse_high": 5055.99,
          "fib_entry_level": "50%",
          "entry": 5047.4125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5044.915,
              "high": 5048.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-20T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-20T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5045.354, planned_rr=3.0, touch=2026-02-20T16:05:00Z, outcome=sl_first",
      "entry": 5045.354,
      "stop": 5038.835,
      "target": 5064.911,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-20T16:05:00Z",
      "outcome_time": "2026-02-20T16:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-20T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-20",
        "timestamp": "2026-02-20T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5038.835,
          "impulse_high": 5055.99,
          "fib_entry_level": "62%",
          "entry": 5045.3539,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5044.915,
              "high": 5048.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-22T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-22T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5132.368, planned_rr=2.0, touch=2026-02-22T23:05:00Z, outcome=tp_first",
      "entry": 5132.368,
      "stop": 5117.815,
      "target": 5161.473,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-22T23:05:00Z",
      "outcome_time": "2026-02-22T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-22T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-22",
        "timestamp": "2026-02-22T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5117.815,
          "impulse_high": 5146.92,
          "fib_entry_level": "50%",
          "entry": 5132.3675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5108.72,
              "high": 5140.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-22T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5152.137, planned_rr=2.0, touch=2026-02-22T23:40:00Z, outcome=tp_first",
      "entry": 5152.137,
      "stop": 5144.69,
      "target": 5167.033,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-22T23:40:00Z",
      "outcome_time": "2026-02-22T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-22",
        "timestamp": "2026-02-22T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5144.69,
          "impulse_high": 5159.585,
          "fib_entry_level": "50%",
          "entry": 5152.1375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5140.77,
              "high": 5152.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-22T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5150.35, planned_rr=3.0, touch=2026-02-22T23:35:00Z, outcome=tp_first",
      "entry": 5150.35,
      "stop": 5144.69,
      "target": 5167.33,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-22T23:35:00Z",
      "outcome_time": "2026-02-22T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-22",
        "timestamp": "2026-02-22T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5144.69,
          "impulse_high": 5159.585,
          "fib_entry_level": "62%",
          "entry": 5150.3501,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5140.77,
              "high": 5152.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5108.72,
            "PDL": 4981.67,
            "PWH": 5108.72,
            "PWL": 4842.6
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5141.762, planned_rr=2.0, touch=2026-02-23T00:20:00Z, outcome=sl_first",
      "entry": 5141.762,
      "stop": 5129.61,
      "target": 5166.068,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T00:20:00Z",
      "outcome_time": "2026-02-23T00:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5129.61,
          "impulse_high": 5153.915,
          "fib_entry_level": "50%",
          "entry": 5141.7625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5140.77,
              "high": 5152.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5138.846, planned_rr=3.0, touch=2026-02-23T00:20:00Z, outcome=sl_first",
      "entry": 5138.846,
      "stop": 5129.61,
      "target": 5166.554,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T00:20:00Z",
      "outcome_time": "2026-02-23T00:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5129.61,
          "impulse_high": 5153.915,
          "fib_entry_level": "62%",
          "entry": 5138.845899999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5108.72,
              "high": 5140.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5152.835, planned_rr=2.0, touch=2026-02-23T10:20:00Z, outcome=sl_first",
      "entry": 5152.835,
      "stop": 5149.12,
      "target": 5160.265,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T10:20:00Z",
      "outcome_time": "2026-02-23T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5149.12,
          "impulse_high": 5156.55,
          "fib_entry_level": "50%",
          "entry": 5152.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5145.16,
              "high": 5157.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5151.943, planned_rr=3.0, touch=2026-02-23T10:20:00Z, outcome=sl_first",
      "entry": 5151.943,
      "stop": 5149.12,
      "target": 5160.414,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T10:20:00Z",
      "outcome_time": "2026-02-23T10:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5149.12,
          "impulse_high": 5156.55,
          "fib_entry_level": "62%",
          "entry": 5151.9434,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5145.16,
              "high": 5157.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5157.788, planned_rr=2.0, touch=2026-02-23T10:50:00Z, outcome=sl_first",
      "entry": 5157.788,
      "stop": 5151.92,
      "target": 5169.523,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T10:50:00Z",
      "outcome_time": "2026-02-23T11:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5151.92,
          "impulse_high": 5163.655,
          "fib_entry_level": "50%",
          "entry": 5157.7875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5156.379, planned_rr=3.0, touch=2026-02-23T10:50:00Z, outcome=sl_first",
      "entry": 5156.379,
      "stop": 5151.92,
      "target": 5169.757,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T10:50:00Z",
      "outcome_time": "2026-02-23T11:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5151.92,
          "impulse_high": 5163.655,
          "fib_entry_level": "62%",
          "entry": 5156.3793,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5145.16,
              "high": 5157.77,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5157.24, planned_rr=2.0, touch=2026-02-23T12:35:00Z, outcome=sl_first",
      "entry": 5157.24,
      "stop": 5149.77,
      "target": 5172.18,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T12:35:00Z",
      "outcome_time": "2026-02-23T12:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5149.77,
          "impulse_high": 5164.71,
          "fib_entry_level": "50%",
          "entry": 5157.24,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5145.16,
              "high": 5157.77,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5157.135,
              "high": 5164.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5155.447, planned_rr=3.0, touch=2026-02-23T12:35:00Z, outcome=sl_first",
      "entry": 5155.447,
      "stop": 5149.77,
      "target": 5172.479,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T12:35:00Z",
      "outcome_time": "2026-02-23T12:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5149.77,
          "impulse_high": 5164.71,
          "fib_entry_level": "62%",
          "entry": 5155.4472000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5145.16,
              "high": 5157.77,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5153.41,
              "high": 5156.03,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T14-00-00Z_long_breaker_continuation",
      "timestamp": "2026-02-23T14:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=5156.057, planned_rr=2.0, touch=2026-02-23T14:10:00Z, outcome=tp_first",
      "entry": 5156.057,
      "stop": 5141.615,
      "target": 5184.943,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-23T14:10:00Z",
      "outcome_time": "2026-02-23T14:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T14-00-00Z_long_breaker_continuation",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5141.615,
          "entry": 5156.0575,
          "stop": 5141.615,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5153.41,
              "high": 5156.03,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T14-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-23T14:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=5156.057, planned_rr=2.0, touch=2026-02-23T14:10:00Z, outcome=tp_first",
      "entry": 5156.057,
      "stop": 5141.615,
      "target": 5184.943,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-23T14:10:00Z",
      "outcome_time": "2026-02-23T14:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T14-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5141.615,
          "entry": 5156.0575,
          "stop": 5141.615,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5152.44,
              "high": 5159.675,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5153.41,
              "high": 5156.03,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T14-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-23T14:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=5156.995, planned_rr=2.0, touch=2026-02-23T14:10:00Z, outcome=tp_first",
      "entry": 5156.995,
      "stop": 5141.615,
      "target": 5187.755,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-23T14:10:00Z",
      "outcome_time": "2026-02-23T14:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T14-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5141.615,
          "entry": 5156.995,
          "stop": 5141.615,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5177.91, planned_rr=2.0, touch=2026-02-23T14:35:00Z, outcome=tp_first",
      "entry": 5177.91,
      "stop": 5164.945,
      "target": 5203.84,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-23T14:35:00Z",
      "outcome_time": "2026-02-23T15:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5164.945,
          "impulse_high": 5190.875,
          "fib_entry_level": "50%",
          "entry": 5177.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5165.495,
              "high": 5187.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5208.043, planned_rr=3.0, touch=2026-02-23T16:30:00Z, outcome=sl_first",
      "entry": 5208.043,
      "stop": 5201.195,
      "target": 5228.585,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-23T16:30:00Z",
      "outcome_time": "2026-02-23T17:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5201.195,
          "impulse_high": 5219.215,
          "fib_entry_level": "62%",
          "entry": 5208.0426,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-23T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-23T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5229.853, planned_rr=3.0, touch=2026-02-23T20:50:00Z, outcome=tp_first",
      "entry": 5229.853,
      "stop": 5224.89,
      "target": 5244.741,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-23T20:50:00Z",
      "outcome_time": "2026-02-23T23:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-23T20-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-23",
        "timestamp": "2026-02-23T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5224.89,
          "impulse_high": 5237.95,
          "fib_entry_level": "62%",
          "entry": 5229.852800000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5237.95,
            "PDL": 5117.815,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5176.48, planned_rr=2.0, touch=2026-02-24T07:20:00Z, outcome=sl_first",
      "entry": 5176.48,
      "stop": 5169.295,
      "target": 5190.85,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-24T07:20:00Z",
      "outcome_time": "2026-02-24T07:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5169.295,
          "impulse_high": 5183.665,
          "fib_entry_level": "50%",
          "entry": 5176.48,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5175.01,
              "high": 5177.17,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5174.756, planned_rr=3.0, touch=2026-02-24T07:20:00Z, outcome=sl_first",
      "entry": 5174.756,
      "stop": 5169.295,
      "target": 5191.137,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-24T07:20:00Z",
      "outcome_time": "2026-02-24T07:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5169.295,
          "impulse_high": 5183.665,
          "fib_entry_level": "62%",
          "entry": 5174.7556,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5155.037, planned_rr=3.0, touch=2026-02-24T13:05:00Z, outcome=sl_first",
      "entry": 5155.037,
      "stop": 5151.085,
      "target": 5166.893,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-24T13:05:00Z",
      "outcome_time": "2026-02-24T13:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5151.085,
          "impulse_high": 5161.485,
          "fib_entry_level": "62%",
          "entry": 5155.037,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5124.513, planned_rr=2.0, touch=2026-02-24T14:35:00Z, outcome=tp_first",
      "entry": 5124.513,
      "stop": 5109.805,
      "target": 5153.928,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-24T14:35:00Z",
      "outcome_time": "2026-02-24T15:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5109.805,
          "impulse_high": 5139.22,
          "fib_entry_level": "50%",
          "entry": 5124.512500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5119.555,
              "high": 5126.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5120.983, planned_rr=3.0, touch=2026-02-24T14:35:00Z, outcome=tp_first",
      "entry": 5120.983,
      "stop": 5109.805,
      "target": 5154.516,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-24T14:35:00Z",
      "outcome_time": "2026-02-24T15:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5109.805,
          "impulse_high": 5139.22,
          "fib_entry_level": "62%",
          "entry": 5120.9827000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5119.555,
              "high": 5126.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5149.8, planned_rr=2.0, touch=2026-02-24T17:05:00Z, outcome=tp_first",
      "entry": 5149.8,
      "stop": 5141.685,
      "target": 5166.03,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-24T17:05:00Z",
      "outcome_time": "2026-02-24T18:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5141.685,
          "impulse_high": 5157.915,
          "fib_entry_level": "50%",
          "entry": 5149.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5145.855,
              "high": 5154.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5147.852, planned_rr=3.0, touch=2026-02-24T19:20:00Z, outcome=tp_first",
      "entry": 5147.852,
      "stop": 5141.685,
      "target": 5166.355,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-24T19:20:00Z",
      "outcome_time": "2026-02-24T20:25:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5141.685,
          "impulse_high": 5157.915,
          "fib_entry_level": "62%",
          "entry": 5147.852400000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5145.855,
              "high": 5154.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T20-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5159.198, planned_rr=2.0, touch=2026-02-24T20:20:00Z, outcome=sl_first",
      "entry": 5159.198,
      "stop": 5148.23,
      "target": 5181.133,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-24T20:20:00Z",
      "outcome_time": "2026-02-24T21:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T20-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5148.23,
          "impulse_high": 5170.165,
          "fib_entry_level": "50%",
          "entry": 5159.1975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5155.95,
              "high": 5165.645,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T20-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5156.565, planned_rr=3.0, touch=2026-02-24T20:20:00Z, outcome=sl_first",
      "entry": 5156.565,
      "stop": 5148.23,
      "target": 5181.571,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-24T20:20:00Z",
      "outcome_time": "2026-02-24T21:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T20-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5148.23,
          "impulse_high": 5170.165,
          "fib_entry_level": "62%",
          "entry": 5156.565299999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5155.95,
              "high": 5165.645,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5139.653, planned_rr=2.0, touch=2026-02-24T23:40:00Z, outcome=tp_first",
      "entry": 5139.653,
      "stop": 5129.315,
      "target": 5160.328,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-24T23:40:00Z",
      "outcome_time": "2026-02-25T01:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5129.315,
          "impulse_high": 5149.99,
          "fib_entry_level": "50%",
          "entry": 5139.6525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5137.96,
              "high": 5145.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-24T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-24T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5137.171, planned_rr=3.0, touch=2026-02-24T23:35:00Z, outcome=tp_first",
      "entry": 5137.171,
      "stop": 5129.315,
      "target": 5160.741,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-24T23:35:00Z",
      "outcome_time": "2026-02-25T01:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-24T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-24",
        "timestamp": "2026-02-24T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5129.315,
          "impulse_high": 5149.99,
          "fib_entry_level": "62%",
          "entry": 5137.1714999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5250.005,
            "PDL": 5093.225,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5179.536, planned_rr=3.0, touch=2026-02-25T01:20:00Z, outcome=sl_first",
      "entry": 5179.536,
      "stop": 5173.925,
      "target": 5196.368,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T01:20:00Z",
      "outcome_time": "2026-02-25T02:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5173.925,
          "impulse_high": 5188.69,
          "fib_entry_level": "62%",
          "entry": 5179.5357,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5181.378, planned_rr=3.0, touch=2026-02-25T02:50:00Z, outcome=sl_first",
      "entry": 5181.378,
      "stop": 5176.36,
      "target": 5196.432,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T02:50:00Z",
      "outcome_time": "2026-02-25T02:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5176.36,
          "impulse_high": 5189.565,
          "fib_entry_level": "62%",
          "entry": 5181.3778999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5190.503, planned_rr=2.0, touch=2026-02-25T08:25:00Z, outcome=sl_first",
      "entry": 5190.503,
      "stop": 5186.85,
      "target": 5197.808,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T08:25:00Z",
      "outcome_time": "2026-02-25T08:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5186.85,
          "impulse_high": 5194.155,
          "fib_entry_level": "50%",
          "entry": 5190.5025000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5190.38,
              "high": 5191.265,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5189.626, planned_rr=3.0, touch=2026-02-25T08:50:00Z, outcome=sl_first",
      "entry": 5189.626,
      "stop": 5186.85,
      "target": 5197.954,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T08:50:00Z",
      "outcome_time": "2026-02-25T08:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5186.85,
          "impulse_high": 5194.155,
          "fib_entry_level": "62%",
          "entry": 5189.6259,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5177.495, planned_rr=2.0, touch=2026-02-25T11:55:00Z, outcome=tp_first",
      "entry": 5177.495,
      "stop": 5172.305,
      "target": 5187.875,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-25T11:55:00Z",
      "outcome_time": "2026-02-25T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5172.305,
          "impulse_high": 5182.685,
          "fib_entry_level": "50%",
          "entry": 5177.495000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5174.05,
              "high": 5178.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5176.249, planned_rr=3.0, touch=2026-02-25T11:50:00Z, outcome=sl_first",
      "entry": 5176.249,
      "stop": 5172.305,
      "target": 5188.083,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T11:50:00Z",
      "outcome_time": "2026-02-25T11:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5172.305,
          "impulse_high": 5182.685,
          "fib_entry_level": "62%",
          "entry": 5176.249400000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5174.05,
              "high": 5178.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5184.132, planned_rr=2.0, touch=2026-02-25T14:50:00Z, outcome=tp_first",
      "entry": 5184.132,
      "stop": 5174.95,
      "target": 5202.497,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-25T14:50:00Z",
      "outcome_time": "2026-02-25T15:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5174.95,
          "impulse_high": 5193.315,
          "fib_entry_level": "50%",
          "entry": 5184.1325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5181.15,
              "high": 5190.345,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5181.929, planned_rr=3.0, touch=2026-02-25T14:50:00Z, outcome=sl_first",
      "entry": 5181.929,
      "stop": 5174.95,
      "target": 5202.865,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-25T14:50:00Z",
      "outcome_time": "2026-02-25T15:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5174.95,
          "impulse_high": 5193.315,
          "fib_entry_level": "62%",
          "entry": 5181.9286999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5181.15,
              "high": 5190.345,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5199.048, planned_rr=2.0, touch=2026-02-25T16:20:00Z, outcome=tp_first",
      "entry": 5199.048,
      "stop": 5191.805,
      "target": 5213.533,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-25T16:20:00Z",
      "outcome_time": "2026-02-25T16:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5191.805,
          "impulse_high": 5206.29,
          "fib_entry_level": "50%",
          "entry": 5199.047500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5198.86,
              "high": 5199.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5197.309, planned_rr=3.0, touch=2026-02-25T16:20:00Z, outcome=tp_first",
      "entry": 5197.309,
      "stop": 5191.805,
      "target": 5213.822,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-25T16:20:00Z",
      "outcome_time": "2026-02-25T16:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5191.805,
          "impulse_high": 5206.29,
          "fib_entry_level": "62%",
          "entry": 5197.3093,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5189.87,
              "high": 5198.86,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-25T21-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-25T21:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5156.381, planned_rr=3.0, touch=2026-02-25T21:05:00Z, outcome=tp_first",
      "entry": 5156.381,
      "stop": 5150.58,
      "target": 5173.783,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-25T21:05:00Z",
      "outcome_time": "2026-02-25T23:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-25T21-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-25",
        "timestamp": "2026-02-25T21:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5150.58,
          "impulse_high": 5165.845,
          "fib_entry_level": "62%",
          "entry": 5156.3807,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5217.78,
            "PDL": 5128.285,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5177.055, planned_rr=2.0, touch=2026-02-26T00:20:00Z, outcome=tp_first",
      "entry": 5177.055,
      "stop": 5167.605,
      "target": 5195.955,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-26T00:20:00Z",
      "outcome_time": "2026-02-26T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5167.605,
          "impulse_high": 5186.505,
          "fib_entry_level": "50%",
          "entry": 5177.055,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5169.6,
              "high": 5181.21,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5174.787, planned_rr=3.0, touch=2026-02-26T00:20:00Z, outcome=tp_first",
      "entry": 5174.787,
      "stop": 5167.605,
      "target": 5196.333,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-26T00:20:00Z",
      "outcome_time": "2026-02-26T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5167.605,
          "impulse_high": 5186.505,
          "fib_entry_level": "62%",
          "entry": 5174.786999999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5169.6,
              "high": 5181.21,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5173.257, planned_rr=3.0, touch=2026-02-26T10:35:00Z, outcome=sl_first",
      "entry": 5173.257,
      "stop": 5167.7,
      "target": 5189.93,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T10:35:00Z",
      "outcome_time": "2026-02-26T10:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5167.7,
          "impulse_high": 5182.325,
          "fib_entry_level": "62%",
          "entry": 5173.2575,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T08-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-02-26T08:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5184.815, planned_rr=2.0, touch=2026-02-26T09:45:00Z, outcome=sl_first",
      "entry": 5184.815,
      "stop": 5167.7,
      "target": 5219.045,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T09:45:00Z",
      "outcome_time": "2026-02-26T10:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T08-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5167.7,
          "entry": 5184.8150000000005,
          "stop": 5167.7,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5183.955,
              "high": 5185.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T08-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-02-26T08:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5179.585, planned_rr=2.0, touch=2026-02-26T08:50:00Z, outcome=sl_first",
      "entry": 5179.585,
      "stop": 5167.7,
      "target": 5203.355,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T08:50:00Z",
      "outcome_time": "2026-02-26T10:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T08-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5167.7,
          "entry": 5179.585,
          "stop": 5167.7,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5185.612, planned_rr=2.0, touch=2026-02-26T09:50:00Z, outcome=sl_first",
      "entry": 5185.612,
      "stop": 5181.575,
      "target": 5193.687,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T09:50:00Z",
      "outcome_time": "2026-02-26T10:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5181.575,
          "impulse_high": 5189.65,
          "fib_entry_level": "50%",
          "entry": 5185.612499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5183.955,
              "high": 5185.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5184.644, planned_rr=3.0, touch=2026-02-26T09:50:00Z, outcome=sl_first",
      "entry": 5184.644,
      "stop": 5181.575,
      "target": 5193.849,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T09:50:00Z",
      "outcome_time": "2026-02-26T10:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5181.575,
          "impulse_high": 5189.65,
          "fib_entry_level": "62%",
          "entry": 5184.6435,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5183.955,
              "high": 5185.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5173.19, planned_rr=2.0, touch=2026-02-26T12:20:00Z, outcome=tp_first",
      "entry": 5173.19,
      "stop": 5165.97,
      "target": 5187.63,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-26T12:20:00Z",
      "outcome_time": "2026-02-26T12:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5165.97,
          "impulse_high": 5180.41,
          "fib_entry_level": "50%",
          "entry": 5173.1900000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5170.085,
              "high": 5177.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5171.457, planned_rr=3.0, touch=2026-02-26T12:20:00Z, outcome=tp_first",
      "entry": 5171.457,
      "stop": 5165.97,
      "target": 5187.919,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-26T12:20:00Z",
      "outcome_time": "2026-02-26T12:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5165.97,
          "impulse_high": 5180.41,
          "fib_entry_level": "62%",
          "entry": 5171.4572,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5170.085,
              "high": 5177.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5181.67, planned_rr=3.0, touch=2026-02-26T12:35:00Z, outcome=sl_first",
      "entry": 5181.67,
      "stop": 5177.87,
      "target": 5193.07,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T12:35:00Z",
      "outcome_time": "2026-02-26T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5177.87,
          "impulse_high": 5187.87,
          "fib_entry_level": "62%",
          "entry": 5181.67,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5192.392, planned_rr=2.0, touch=2026-02-26T20:15:00Z, outcome=sl_first",
      "entry": 5192.392,
      "stop": 5186.74,
      "target": 5203.698,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T20:15:00Z",
      "outcome_time": "2026-02-26T21:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5186.74,
          "impulse_high": 5198.045,
          "fib_entry_level": "50%",
          "entry": 5192.3925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5191.895,
              "high": 5198.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-26T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5191.036, planned_rr=3.0, touch=2026-02-26T20:30:00Z, outcome=sl_first",
      "entry": 5191.036,
      "stop": 5186.74,
      "target": 5203.924,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-26T20:30:00Z",
      "outcome_time": "2026-02-26T21:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-26",
        "timestamp": "2026-02-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5186.74,
          "impulse_high": 5198.045,
          "fib_entry_level": "62%",
          "entry": 5191.0359,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5205.64,
            "PDL": 5130.235,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5182.337, planned_rr=2.0, touch=2026-02-27T01:35:00Z, outcome=tp_first",
      "entry": 5182.337,
      "stop": 5173.345,
      "target": 5200.322,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-27T01:35:00Z",
      "outcome_time": "2026-02-27T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5173.345,
          "impulse_high": 5191.33,
          "fib_entry_level": "50%",
          "entry": 5182.3375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5180.355,
              "high": 5187.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5180.179, planned_rr=3.0, touch=2026-02-27T02:35:00Z, outcome=sl_first",
      "entry": 5180.179,
      "stop": 5173.345,
      "target": 5200.682,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T02:35:00Z",
      "outcome_time": "2026-02-27T09:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5173.345,
          "impulse_high": 5191.33,
          "fib_entry_level": "62%",
          "entry": 5180.1793,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5190.407, planned_rr=2.0, touch=2026-02-27T05:25:00Z, outcome=tp_first",
      "entry": 5190.407,
      "stop": 5185.78,
      "target": 5199.662,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-02-27T05:25:00Z",
      "outcome_time": "2026-02-27T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5185.78,
          "impulse_high": 5195.035,
          "fib_entry_level": "50%",
          "entry": 5190.407499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5190.205,
              "high": 5197.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5189.297, planned_rr=3.0, touch=2026-02-27T05:20:00Z, outcome=tp_first",
      "entry": 5189.297,
      "stop": 5185.78,
      "target": 5199.848,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-02-27T05:20:00Z",
      "outcome_time": "2026-02-27T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5185.78,
          "impulse_high": 5195.035,
          "fib_entry_level": "62%",
          "entry": 5189.296899999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5187.62,
              "high": 5190.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5195.792, planned_rr=2.0, touch=2026-02-27T05:50:00Z, outcome=sl_first",
      "entry": 5195.792,
      "stop": 5190.945,
      "target": 5205.487,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T05:50:00Z",
      "outcome_time": "2026-02-27T05:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5190.945,
          "impulse_high": 5200.64,
          "fib_entry_level": "50%",
          "entry": 5195.7925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5190.205,
              "high": 5197.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5194.629, planned_rr=3.0, touch=2026-02-27T05:50:00Z, outcome=sl_first",
      "entry": 5194.629,
      "stop": 5190.945,
      "target": 5205.681,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T05:50:00Z",
      "outcome_time": "2026-02-27T05:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5190.945,
          "impulse_high": 5200.64,
          "fib_entry_level": "62%",
          "entry": 5194.6291,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5190.205,
              "high": 5197.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5226.708, planned_rr=2.0, touch=2026-02-27T13:20:00Z, outcome=sl_first",
      "entry": 5226.708,
      "stop": 5212.59,
      "target": 5254.943,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T13:20:00Z",
      "outcome_time": "2026-02-27T13:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5212.59,
          "impulse_high": 5240.825,
          "fib_entry_level": "50%",
          "entry": 5226.7075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5215.985,
              "high": 5229.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5223.319, planned_rr=3.0, touch=2026-02-27T13:20:00Z, outcome=sl_first",
      "entry": 5223.319,
      "stop": 5212.59,
      "target": 5255.507,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T13:20:00Z",
      "outcome_time": "2026-02-27T13:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5212.59,
          "impulse_high": 5240.825,
          "fib_entry_level": "62%",
          "entry": 5223.3193,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5215.985,
              "high": 5229.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5227.504, planned_rr=3.0, touch=2026-02-27T15:05:00Z, outcome=sl_first",
      "entry": 5227.504,
      "stop": 5219.68,
      "target": 5250.977,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T15:05:00Z",
      "outcome_time": "2026-02-27T15:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5219.68,
          "impulse_high": 5240.27,
          "fib_entry_level": "62%",
          "entry": 5227.5042,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5215.985,
              "high": 5229.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-02-27T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-02-27T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5242.274, planned_rr=3.0, touch=2026-02-27T16:05:00Z, outcome=sl_first",
      "entry": 5242.274,
      "stop": 5233.975,
      "target": 5267.172,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-02-27T16:05:00Z",
      "outcome_time": "2026-02-27T16:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-02-27T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-02-27",
        "timestamp": "2026-02-27T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5233.975,
          "impulse_high": 5255.815,
          "fib_entry_level": "62%",
          "entry": 5242.2742,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-01T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-01T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5373.54, planned_rr=2.0, touch=2026-03-01T23:35:00Z, outcome=sl_first",
      "entry": 5373.54,
      "stop": 5353.075,
      "target": 5414.47,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-01T23:35:00Z",
      "outcome_time": "2026-03-02T00:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-01T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-01",
        "timestamp": "2026-03-01T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5353.075,
          "impulse_high": 5394.005,
          "fib_entry_level": "50%",
          "entry": 5373.54,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5358.51,
              "high": 5373.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-01T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-01T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5368.628, planned_rr=3.0, touch=2026-03-01T23:35:00Z, outcome=sl_first",
      "entry": 5368.628,
      "stop": 5353.075,
      "target": 5415.289,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-01T23:35:00Z",
      "outcome_time": "2026-03-02T00:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-01T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-01",
        "timestamp": "2026-03-01T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5353.075,
          "impulse_high": 5394.005,
          "fib_entry_level": "62%",
          "entry": 5368.6284,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5358.51,
              "high": 5373.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5281.155,
            "PDL": 5166.995,
            "PWH": 5281.155,
            "PWL": 5093.225
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5318.322, planned_rr=3.0, touch=2026-03-02T02:05:00Z, outcome=tp_first",
      "entry": 5318.322,
      "stop": 5305.465,
      "target": 5356.894,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-02T02:05:00Z",
      "outcome_time": "2026-03-02T03:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5305.465,
          "impulse_high": 5339.3,
          "fib_entry_level": "62%",
          "entry": 5318.3223,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5396.007, planned_rr=2.0, touch=2026-03-02T07:05:00Z, outcome=tp_first",
      "entry": 5396.007,
      "stop": 5385.035,
      "target": 5417.952,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-02T07:05:00Z",
      "outcome_time": "2026-03-02T07:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5385.035,
          "impulse_high": 5406.98,
          "fib_entry_level": "50%",
          "entry": 5396.0075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5390.21,
              "high": 5404.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5393.374, planned_rr=3.0, touch=2026-03-02T07:05:00Z, outcome=tp_first",
      "entry": 5393.374,
      "stop": 5385.035,
      "target": 5418.391,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-02T07:05:00Z",
      "outcome_time": "2026-03-02T07:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5385.035,
          "impulse_high": 5406.98,
          "fib_entry_level": "62%",
          "entry": 5393.3741,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5390.21,
              "high": 5404.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5392.279, planned_rr=3.0, touch=2026-03-02T10:35:00Z, outcome=sl_first",
      "entry": 5392.279,
      "stop": 5386.93,
      "target": 5408.324,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-02T10:35:00Z",
      "outcome_time": "2026-03-02T10:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5386.93,
          "impulse_high": 5401.005,
          "fib_entry_level": "62%",
          "entry": 5392.2785,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5392.709, planned_rr=3.0, touch=2026-03-02T13:20:00Z, outcome=sl_first",
      "entry": 5392.709,
      "stop": 5382.555,
      "target": 5423.169,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-02T13:20:00Z",
      "outcome_time": "2026-03-02T14:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5382.555,
          "impulse_high": 5409.275,
          "fib_entry_level": "62%",
          "entry": 5392.7086,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5325.417, planned_rr=3.0, touch=2026-03-02T14:35:00Z, outcome=sl_first",
      "entry": 5325.417,
      "stop": 5306.51,
      "target": 5382.138,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-02T14:35:00Z",
      "outcome_time": "2026-03-02T16:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5306.51,
          "impulse_high": 5356.265,
          "fib_entry_level": "62%",
          "entry": 5325.4169,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-02T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-02T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5336.468, planned_rr=3.0, touch=2026-03-03T02:00:00Z, outcome=tp_first",
      "entry": 5336.468,
      "stop": 5330.145,
      "target": 5355.438,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-03T02:00:00Z",
      "outcome_time": "2026-03-03T02:05:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-02T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-02",
        "timestamp": "2026-03-02T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5330.145,
          "impulse_high": 5346.785,
          "fib_entry_level": "62%",
          "entry": 5336.4682,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5419.66,
            "PDL": 5260.285,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5359.625, planned_rr=2.0, touch=2026-03-03T01:45:00Z, outcome=sl_first",
      "entry": 5359.625,
      "stop": 5347.12,
      "target": 5384.635,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T01:45:00Z",
      "outcome_time": "2026-03-03T01:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5347.12,
          "impulse_high": 5372.13,
          "fib_entry_level": "50%",
          "entry": 5359.625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5346.05,
              "high": 5359.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5356.624, planned_rr=3.0, touch=2026-03-03T01:45:00Z, outcome=sl_first",
      "entry": 5356.624,
      "stop": 5347.12,
      "target": 5385.135,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T01:45:00Z",
      "outcome_time": "2026-03-03T01:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5347.12,
          "impulse_high": 5372.13,
          "fib_entry_level": "62%",
          "entry": 5356.6238,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5346.05,
              "high": 5359.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5300.338, planned_rr=3.0, touch=2026-03-03T06:35:00Z, outcome=sl_first",
      "entry": 5300.338,
      "stop": 5288.4,
      "target": 5336.151,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T06:35:00Z",
      "outcome_time": "2026-03-03T09:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5288.4,
          "impulse_high": 5319.815,
          "fib_entry_level": "62%",
          "entry": 5300.3377,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5319.191, planned_rr=3.0, touch=2026-03-03T07:35:00Z, outcome=sl_first",
      "entry": 5319.191,
      "stop": 5313.52,
      "target": 5336.206,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T07:35:00Z",
      "outcome_time": "2026-03-03T08:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5313.52,
          "impulse_high": 5328.445,
          "fib_entry_level": "62%",
          "entry": 5319.1915,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5310.195,
              "high": 5320.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5252.417, planned_rr=3.0, touch=2026-03-03T10:35:00Z, outcome=sl_first",
      "entry": 5252.417,
      "stop": 5241.135,
      "target": 5286.264,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T10:35:00Z",
      "outcome_time": "2026-03-03T10:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5241.135,
          "impulse_high": 5270.825,
          "fib_entry_level": "62%",
          "entry": 5252.4172,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5212.343, planned_rr=2.0, touch=2026-03-03T11:05:00Z, outcome=tp_first",
      "entry": 5212.343,
      "stop": 5264.17,
      "target": 5108.688,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-03T11:05:00Z",
      "outcome_time": "2026-03-03T11:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5160.515,
          "impulse_high": 5264.17,
          "fib_entry_level": "50%",
          "entry": 5212.342500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5209.12,
              "high": 5237.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5224.781, planned_rr=3.0, touch=2026-03-03T11:05:00Z, outcome=tp_first",
      "entry": 5224.781,
      "stop": 5264.17,
      "target": 5106.614,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-03T11:05:00Z",
      "outcome_time": "2026-03-03T11:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5160.515,
          "impulse_high": 5264.17,
          "fib_entry_level": "62%",
          "entry": 5224.7811,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5209.12,
              "high": 5237.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5159.812, planned_rr=2.0, touch=2026-03-03T11:25:00Z, outcome=sl_first",
      "entry": 5159.812,
      "stop": 5209.12,
      "target": 5061.198,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T11:25:00Z",
      "outcome_time": "2026-03-03T12:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5110.505,
          "impulse_high": 5209.12,
          "fib_entry_level": "50%",
          "entry": 5159.8125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5143.19,
              "high": 5160.515,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5171.646, planned_rr=3.0, touch=2026-03-03T11:25:00Z, outcome=sl_first",
      "entry": 5171.646,
      "stop": 5209.12,
      "target": 5059.225,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T11:25:00Z",
      "outcome_time": "2026-03-03T12:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5110.505,
          "impulse_high": 5209.12,
          "fib_entry_level": "62%",
          "entry": 5171.6463,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5166.22, planned_rr=2.0, touch=2026-03-03T12:05:00Z, outcome=tp_first",
      "entry": 5166.22,
      "stop": 5138.915,
      "target": 5220.83,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-03T12:05:00Z",
      "outcome_time": "2026-03-03T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5138.915,
          "impulse_high": 5193.525,
          "fib_entry_level": "50%",
          "entry": 5166.219999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5157.935,
              "high": 5181.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5159.667, planned_rr=3.0, touch=2026-03-03T12:05:00Z, outcome=tp_first",
      "entry": 5159.667,
      "stop": 5138.915,
      "target": 5221.922,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-03T12:05:00Z",
      "outcome_time": "2026-03-03T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5138.915,
          "impulse_high": 5193.525,
          "fib_entry_level": "62%",
          "entry": 5159.6668,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5157.935,
              "high": 5181.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5185.417, planned_rr=2.0, touch=2026-03-03T13:30:00Z, outcome=tp_first",
      "entry": 5185.417,
      "stop": 5224.625,
      "target": 5107.002,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-03T13:30:00Z",
      "outcome_time": "2026-03-03T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5146.21,
          "impulse_high": 5224.625,
          "fib_entry_level": "50%",
          "entry": 5185.4175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5184.59,
              "high": 5196.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5104.222, planned_rr=2.0, touch=2026-03-03T14:35:00Z, outcome=tp_first",
      "entry": 5104.222,
      "stop": 5146.31,
      "target": 5020.047,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-03T14:35:00Z",
      "outcome_time": "2026-03-03T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5062.135,
          "impulse_high": 5146.31,
          "fib_entry_level": "50%",
          "entry": 5104.2225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5077.385,
              "high": 5124.81,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-03T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5114.324, planned_rr=3.0, touch=2026-03-03T14:35:00Z, outcome=tp_first",
      "entry": 5114.324,
      "stop": 5146.31,
      "target": 5018.364,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-03T14:35:00Z",
      "outcome_time": "2026-03-03T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5062.135,
          "impulse_high": 5146.31,
          "fib_entry_level": "62%",
          "entry": 5114.3235,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5077.385,
              "high": 5124.81,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-03T19-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-03T19:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=5124.233, planned_rr=2.0, touch=2026-03-03T19:10:00Z, outcome=sl_first",
      "entry": 5124.233,
      "stop": 5149.055,
      "target": 5074.587,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-03T19:10:00Z",
      "outcome_time": "2026-03-04T01:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-03T19-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-03",
        "timestamp": "2026-03-03T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 5149.055,
          "entry": 5124.2325,
          "stop": 5149.055,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5121.36,
              "high": 5127.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5379.975,
            "PDL": 4996.275,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5148.072, planned_rr=3.0, touch=2026-03-04T01:05:00Z, outcome=tp_first",
      "entry": 5148.072,
      "stop": 5139.055,
      "target": 5175.125,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-04T01:05:00Z",
      "outcome_time": "2026-03-04T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5139.055,
          "impulse_high": 5162.785,
          "fib_entry_level": "62%",
          "entry": 5148.0724,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5157.657, planned_rr=3.0, touch=2026-03-04T01:20:00Z, outcome=sl_first",
      "entry": 5157.657,
      "stop": 5164.66,
      "target": 5136.646,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T01:20:00Z",
      "outcome_time": "2026-03-04T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5146.23,
          "impulse_high": 5164.66,
          "fib_entry_level": "62%",
          "entry": 5157.656599999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T01-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-04T01:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=5162.135, planned_rr=2.0, touch=2026-03-04T01:20:00Z, outcome=tp_first",
      "entry": 5162.135,
      "stop": 5164.66,
      "target": 5157.085,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-04T01:20:00Z",
      "outcome_time": "2026-03-04T01:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T01-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5164.66,
          "entry": 5162.135,
          "stop": 5164.66,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5160.45,
              "high": 5163.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T01-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-04T01:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5146.23, planned_rr=2.0, touch=2026-03-04T01:25:00Z, outcome=sl_first",
      "entry": 5146.23,
      "stop": 5164.66,
      "target": 5109.37,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T01:25:00Z",
      "outcome_time": "2026-03-04T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T01-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5164.66,
          "entry": 5146.23,
          "stop": 5164.66,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5150.564, planned_rr=3.0, touch=2026-03-04T01:35:00Z, outcome=tp_first",
      "entry": 5150.564,
      "stop": 5142.485,
      "target": 5174.8,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-04T01:35:00Z",
      "outcome_time": "2026-03-04T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5142.485,
          "impulse_high": 5163.745,
          "fib_entry_level": "62%",
          "entry": 5150.5638,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5176.734, planned_rr=3.0, touch=2026-03-04T02:05:00Z, outcome=sl_first",
      "entry": 5176.734,
      "stop": 5167.95,
      "target": 5203.085,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T02:05:00Z",
      "outcome_time": "2026-03-04T02:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5167.95,
          "impulse_high": 5191.065,
          "fib_entry_level": "62%",
          "entry": 5176.7337,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5170.844, planned_rr=3.0, touch=2026-03-04T02:50:00Z, outcome=tp_first",
      "entry": 5170.844,
      "stop": 5181.125,
      "target": 5140.001,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-04T02:50:00Z",
      "outcome_time": "2026-03-04T06:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5154.07,
          "impulse_high": 5181.125,
          "fib_entry_level": "62%",
          "entry": 5170.8441,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5167.585, planned_rr=3.0, touch=2026-03-04T08:35:00Z, outcome=sl_first",
      "entry": 5167.585,
      "stop": 5162.155,
      "target": 5183.876,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T08:35:00Z",
      "outcome_time": "2026-03-04T09:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5162.155,
          "impulse_high": 5176.445,
          "fib_entry_level": "62%",
          "entry": 5167.5851999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5177.265, planned_rr=2.0, touch=2026-03-04T09:35:00Z, outcome=tp_first",
      "entry": 5177.265,
      "stop": 5169.13,
      "target": 5193.535,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-04T09:35:00Z",
      "outcome_time": "2026-03-04T10:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5169.13,
          "impulse_high": 5185.4,
          "fib_entry_level": "50%",
          "entry": 5177.264999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5175.995,
              "high": 5185.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5175.313, planned_rr=3.0, touch=2026-03-04T09:35:00Z, outcome=tp_first",
      "entry": 5175.313,
      "stop": 5169.13,
      "target": 5193.86,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-04T09:35:00Z",
      "outcome_time": "2026-03-04T10:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5169.13,
          "impulse_high": 5185.4,
          "fib_entry_level": "62%",
          "entry": 5175.3126,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5188.504, planned_rr=3.0, touch=2026-03-04T10:05:00Z, outcome=sl_first",
      "entry": 5188.504,
      "stop": 5182.485,
      "target": 5206.562,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T10:05:00Z",
      "outcome_time": "2026-03-04T10:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5182.485,
          "impulse_high": 5198.325,
          "fib_entry_level": "62%",
          "entry": 5188.504199999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5183.755, planned_rr=2.0, touch=2026-03-04T13:05:00Z, outcome=sl_first",
      "entry": 5183.755,
      "stop": 5170.99,
      "target": 5209.285,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T13:05:00Z",
      "outcome_time": "2026-03-04T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5170.99,
          "impulse_high": 5196.52,
          "fib_entry_level": "50%",
          "entry": 5183.755,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5175.995,
              "high": 5185.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5180.691, planned_rr=3.0, touch=2026-03-04T13:05:00Z, outcome=sl_first",
      "entry": 5180.691,
      "stop": 5170.99,
      "target": 5209.796,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T13:05:00Z",
      "outcome_time": "2026-03-04T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5170.99,
          "impulse_high": 5196.52,
          "fib_entry_level": "62%",
          "entry": 5180.6914,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5175.995,
              "high": 5185.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5164.329, planned_rr=3.0, touch=2026-03-04T15:35:00Z, outcome=tp_first",
      "entry": 5164.329,
      "stop": 5179.865,
      "target": 5117.72,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-04T15:35:00Z",
      "outcome_time": "2026-03-04T18:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5138.98,
          "impulse_high": 5179.865,
          "fib_entry_level": "62%",
          "entry": 5164.3287,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5163.225,
              "high": 5185.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5143.09, planned_rr=3.0, touch=2026-03-04T15:20:00Z, outcome=sl_first",
      "entry": 5143.09,
      "stop": 5132.83,
      "target": 5173.87,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T15:20:00Z",
      "outcome_time": "2026-03-04T17:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5132.83,
          "impulse_high": 5159.83,
          "fib_entry_level": "62%",
          "entry": 5143.09,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5130.677, planned_rr=2.0, touch=2026-03-04T18:05:00Z, outcome=sl_first",
      "entry": 5130.677,
      "stop": 5143.695,
      "target": 5104.642,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T18:05:00Z",
      "outcome_time": "2026-03-04T20:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5117.66,
          "impulse_high": 5143.695,
          "fib_entry_level": "50%",
          "entry": 5130.6775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5128.185,
              "high": 5135.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5133.802, planned_rr=3.0, touch=2026-03-04T18:05:00Z, outcome=sl_first",
      "entry": 5133.802,
      "stop": 5143.695,
      "target": 5104.122,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T18:05:00Z",
      "outcome_time": "2026-03-04T20:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5117.66,
          "impulse_high": 5143.695,
          "fib_entry_level": "62%",
          "entry": 5133.8017,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5128.185,
              "high": 5135.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-04T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-04T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5140.272, planned_rr=3.0, touch=2026-03-04T21:00:00Z, outcome=sl_first",
      "entry": 5140.272,
      "stop": 5144.76,
      "target": 5126.809,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-04T21:00:00Z",
      "outcome_time": "2026-03-04T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-04T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-04",
        "timestamp": "2026-03-04T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5132.95,
          "impulse_high": 5144.76,
          "fib_entry_level": "62%",
          "entry": 5140.2722,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5206.265,
            "PDL": 5105.37,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5182.434, planned_rr=3.0, touch=2026-03-05T02:35:00Z, outcome=sl_first",
      "entry": 5182.434,
      "stop": 5187.325,
      "target": 5167.763,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T02:35:00Z",
      "outcome_time": "2026-03-05T02:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5174.455,
          "impulse_high": 5187.325,
          "fib_entry_level": "62%",
          "entry": 5182.4344,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T03:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5186.305, planned_rr=3.0, touch=2026-03-05T04:15:00Z, outcome=tp_first",
      "entry": 5186.305,
      "stop": 5191.18,
      "target": 5171.678,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-05T04:15:00Z",
      "outcome_time": "2026-03-05T04:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T03:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5178.35,
          "impulse_high": 5191.18,
          "fib_entry_level": "62%",
          "entry": 5186.3046,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5158.975, planned_rr=2.0, touch=2026-03-05T05:50:00Z, outcome=tp_first",
      "entry": 5158.975,
      "stop": 5169.54,
      "target": 5137.845,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-05T05:50:00Z",
      "outcome_time": "2026-03-05T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5148.41,
          "impulse_high": 5169.54,
          "fib_entry_level": "50%",
          "entry": 5158.975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5155.535,
              "high": 5162.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5161.511, planned_rr=3.0, touch=2026-03-05T05:50:00Z, outcome=tp_first",
      "entry": 5161.511,
      "stop": 5169.54,
      "target": 5137.422,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-05T05:50:00Z",
      "outcome_time": "2026-03-05T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5148.41,
          "impulse_high": 5169.54,
          "fib_entry_level": "62%",
          "entry": 5161.5106,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5155.535,
              "high": 5162.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5142.33, planned_rr=3.0, touch=2026-03-05T06:05:00Z, outcome=sl_first",
      "entry": 5142.33,
      "stop": 5155.535,
      "target": 5102.715,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T06:05:00Z",
      "outcome_time": "2026-03-05T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5120.785,
          "impulse_high": 5155.535,
          "fib_entry_level": "62%",
          "entry": 5142.33,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5152.307, planned_rr=2.0, touch=2026-03-05T08:05:00Z, outcome=sl_first",
      "entry": 5152.307,
      "stop": 5162.825,
      "target": 5131.273,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T08:05:00Z",
      "outcome_time": "2026-03-05T08:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5141.79,
          "impulse_high": 5162.825,
          "fib_entry_level": "50%",
          "entry": 5152.3075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5148.785,
              "high": 5158.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5154.832, planned_rr=3.0, touch=2026-03-05T08:05:00Z, outcome=sl_first",
      "entry": 5154.832,
      "stop": 5162.825,
      "target": 5130.852,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T08:05:00Z",
      "outcome_time": "2026-03-05T08:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5141.79,
          "impulse_high": 5162.825,
          "fib_entry_level": "62%",
          "entry": 5154.8317,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5148.785,
              "high": 5158.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5130.191, planned_rr=3.0, touch=2026-03-05T13:20:00Z, outcome=unresolved",
      "entry": 5130.191,
      "stop": 5160.2,
      "target": 5040.166,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-03-05T13:20:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5081.23,
          "impulse_high": 5160.2,
          "fib_entry_level": "62%",
          "entry": 5130.1914,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5123.766, planned_rr=3.0, touch=2026-03-05T13:50:00Z, outcome=tp_first",
      "entry": 5123.766,
      "stop": 5132.215,
      "target": 5098.418,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-05T13:50:00Z",
      "outcome_time": "2026-03-05T14:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5109.98,
          "impulse_high": 5132.215,
          "fib_entry_level": "62%",
          "entry": 5123.7657,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5107.153, planned_rr=2.0, touch=2026-03-05T14:35:00Z, outcome=sl_first",
      "entry": 5107.153,
      "stop": 5123.765,
      "target": 5073.927,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T14:35:00Z",
      "outcome_time": "2026-03-05T14:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5090.54,
          "impulse_high": 5123.765,
          "fib_entry_level": "50%",
          "entry": 5107.1525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5091.37,
              "high": 5111.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5111.14, planned_rr=3.0, touch=2026-03-05T14:35:00Z, outcome=sl_first",
      "entry": 5111.14,
      "stop": 5123.765,
      "target": 5073.263,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T14:35:00Z",
      "outcome_time": "2026-03-05T14:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5090.54,
          "impulse_high": 5123.765,
          "fib_entry_level": "62%",
          "entry": 5111.1395,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5091.37,
              "high": 5111.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5097.416, planned_rr=3.0, touch=2026-03-05T15:05:00Z, outcome=sl_first",
      "entry": 5097.416,
      "stop": 5119.965,
      "target": 5029.768,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T15:05:00Z",
      "outcome_time": "2026-03-06T01:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5060.625,
          "impulse_high": 5119.965,
          "fib_entry_level": "62%",
          "entry": 5097.4158,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5091.37,
              "high": 5111.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5075.924, planned_rr=3.0, touch=2026-03-05T16:20:00Z, outcome=sl_first",
      "entry": 5075.924,
      "stop": 5085.485,
      "target": 5047.242,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-05T16:20:00Z",
      "outcome_time": "2026-03-05T17:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5060.325,
          "impulse_high": 5085.485,
          "fib_entry_level": "62%",
          "entry": 5075.9241999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-05T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5094.875, planned_rr=3.0, touch=2026-03-05T23:50:00Z, outcome=tp_first",
      "entry": 5094.875,
      "stop": 5101.08,
      "target": 5076.258,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-05T23:50:00Z",
      "outcome_time": "2026-03-06T00:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-05T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-05",
        "timestamp": "2026-03-05T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5084.75,
          "impulse_high": 5101.08,
          "fib_entry_level": "62%",
          "entry": 5094.8746,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5195.22,
            "PDL": 5050.905,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5078.853, planned_rr=3.0, touch=2026-03-06T01:05:00Z, outcome=sl_first",
      "entry": 5078.853,
      "stop": 5086.485,
      "target": 5055.956,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-06T01:05:00Z",
      "outcome_time": "2026-03-06T01:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5066.4,
          "impulse_high": 5086.485,
          "fib_entry_level": "62%",
          "entry": 5078.8526999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5108.608, planned_rr=2.0, touch=2026-03-06T08:20:00Z, outcome=tp_first",
      "entry": 5108.608,
      "stop": 5117.885,
      "target": 5090.052,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-06T08:20:00Z",
      "outcome_time": "2026-03-06T09:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5099.33,
          "impulse_high": 5117.885,
          "fib_entry_level": "50%",
          "entry": 5108.6075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5107.125,
              "high": 5113.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5110.834, planned_rr=3.0, touch=2026-03-06T08:20:00Z, outcome=tp_first",
      "entry": 5110.834,
      "stop": 5117.885,
      "target": 5089.681,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-06T08:20:00Z",
      "outcome_time": "2026-03-06T09:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5099.33,
          "impulse_high": 5117.885,
          "fib_entry_level": "62%",
          "entry": 5110.8341,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5108.945,
              "high": 5110.91,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5107.125,
              "high": 5113.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5092.078, planned_rr=3.0, touch=2026-03-06T09:50:00Z, outcome=tp_first",
      "entry": 5092.078,
      "stop": 5097.44,
      "target": 5075.993,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-06T09:50:00Z",
      "outcome_time": "2026-03-06T10:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5083.33,
          "impulse_high": 5097.44,
          "fib_entry_level": "62%",
          "entry": 5092.0782,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5092.585, planned_rr=3.0, touch=2026-03-06T11:35:00Z, outcome=tp_first",
      "entry": 5092.585,
      "stop": 5099.735,
      "target": 5071.136,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-06T11:35:00Z",
      "outcome_time": "2026-03-06T11:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5080.92,
          "impulse_high": 5099.735,
          "fib_entry_level": "62%",
          "entry": 5092.5853,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T11-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-06T11:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-03-06T11-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5099.735,
          "entry": 5104.93,
          "stop": 5099.735,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5102.735,
              "high": 5107.125,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5107.125,
              "high": 5113.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T11-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-06T11:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5081.27, planned_rr=2.0, touch=2026-03-06T11:40:00Z, outcome=sl_first",
      "entry": 5081.27,
      "stop": 5099.735,
      "target": 5044.34,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-06T11:40:00Z",
      "outcome_time": "2026-03-06T13:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T11-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5099.735,
          "entry": 5081.27,
          "stop": 5099.735,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5090.811, planned_rr=3.0, touch=2026-03-06T12:50:00Z, outcome=tp_first",
      "entry": 5090.811,
      "stop": 5096.555,
      "target": 5073.58,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-06T12:50:00Z",
      "outcome_time": "2026-03-06T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5081.44,
          "impulse_high": 5096.555,
          "fib_entry_level": "62%",
          "entry": 5090.8113,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-06T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-06T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5104.065, planned_rr=3.0, touch=2026-03-06T13:50:00Z, outcome=sl_first",
      "entry": 5104.065,
      "stop": 5122.51,
      "target": 5048.729,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-06T13:50:00Z",
      "outcome_time": "2026-03-06T14:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-06T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-06",
        "timestamp": "2026-03-06T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5073.97,
          "impulse_high": 5122.51,
          "fib_entry_level": "62%",
          "entry": 5104.0648,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-08T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-08T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5151.65, planned_rr=3.0, touch=2026-03-08T22:05:00Z, outcome=tp_first",
      "entry": 5151.65,
      "stop": 5171.95,
      "target": 5090.752,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-08T22:05:00Z",
      "outcome_time": "2026-03-08T23:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-08T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-08",
        "timestamp": "2026-03-08T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5118.53,
          "impulse_high": 5171.95,
          "fib_entry_level": "62%",
          "entry": 5151.6503999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-08T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-08T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5074.835, planned_rr=2.0, touch=2026-03-08T23:35:00Z, outcome=sl_first",
      "entry": 5074.835,
      "stop": 5105.53,
      "target": 5013.445,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-08T23:35:00Z",
      "outcome_time": "2026-03-09T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-08T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-08",
        "timestamp": "2026-03-08T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5044.14,
          "impulse_high": 5105.53,
          "fib_entry_level": "50%",
          "entry": 5074.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.25,
              "high": 5080.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-08T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-08T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5082.202, planned_rr=3.0, touch=2026-03-08T23:35:00Z, outcome=sl_first",
      "entry": 5082.202,
      "stop": 5105.53,
      "target": 5012.217,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-08T23:35:00Z",
      "outcome_time": "2026-03-09T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-08T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-08",
        "timestamp": "2026-03-08T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5044.14,
          "impulse_high": 5105.53,
          "fib_entry_level": "62%",
          "entry": 5082.2018,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5080.39,
              "high": 5095.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5176.63,
            "PDL": 5063.215,
            "PWH": 5419.66,
            "PWL": 4996.275
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5054.95, planned_rr=2.0, touch=2026-03-09T00:05:00Z, outcome=sl_first",
      "entry": 5054.95,
      "stop": 5081.36,
      "target": 5002.13,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T00:05:00Z",
      "outcome_time": "2026-03-09T01:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5028.54,
          "impulse_high": 5081.36,
          "fib_entry_level": "50%",
          "entry": 5054.95,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.25,
              "high": 5080.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5061.288, planned_rr=3.0, touch=2026-03-09T00:05:00Z, outcome=sl_first",
      "entry": 5061.288,
      "stop": 5081.36,
      "target": 5001.074,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T00:05:00Z",
      "outcome_time": "2026-03-09T01:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5028.54,
          "impulse_high": 5081.36,
          "fib_entry_level": "62%",
          "entry": 5061.2883999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5054.25,
              "high": 5080.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5117.27, planned_rr=2.0, touch=2026-03-09T06:35:00Z, outcome=tp_first",
      "entry": 5117.27,
      "stop": 5129.85,
      "target": 5092.11,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-09T06:35:00Z",
      "outcome_time": "2026-03-09T07:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5104.69,
          "impulse_high": 5129.85,
          "fib_entry_level": "50%",
          "entry": 5117.27,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5111.24,
              "high": 5123.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5120.289, planned_rr=3.0, touch=2026-03-09T06:35:00Z, outcome=tp_first",
      "entry": 5120.289,
      "stop": 5129.85,
      "target": 5091.607,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-09T06:35:00Z",
      "outcome_time": "2026-03-09T07:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5104.69,
          "impulse_high": 5129.85,
          "fib_entry_level": "62%",
          "entry": 5120.2892,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5111.24,
              "high": 5123.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5098.77, planned_rr=2.0, touch=2026-03-09T08:20:00Z, outcome=sl_first",
      "entry": 5098.77,
      "stop": 5106.63,
      "target": 5083.05,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T08:20:00Z",
      "outcome_time": "2026-03-09T09:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5090.91,
          "impulse_high": 5106.63,
          "fib_entry_level": "50%",
          "entry": 5098.77,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5096.895,
              "high": 5099.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5100.656, planned_rr=3.0, touch=2026-03-09T08:20:00Z, outcome=sl_first",
      "entry": 5100.656,
      "stop": 5106.63,
      "target": 5082.736,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T08:20:00Z",
      "outcome_time": "2026-03-09T09:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5090.91,
          "impulse_high": 5106.63,
          "fib_entry_level": "62%",
          "entry": 5100.6564,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5105.985, planned_rr=2.0, touch=2026-03-09T09:05:00Z, outcome=sl_first",
      "entry": 5105.985,
      "stop": 5095.085,
      "target": 5127.785,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T09:05:00Z",
      "outcome_time": "2026-03-09T09:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5095.085,
          "impulse_high": 5116.885,
          "fib_entry_level": "50%",
          "entry": 5105.985000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5102.77,
              "high": 5112.395,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5103.369, planned_rr=3.0, touch=2026-03-09T09:05:00Z, outcome=sl_first",
      "entry": 5103.369,
      "stop": 5095.085,
      "target": 5128.221,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T09:05:00Z",
      "outcome_time": "2026-03-09T09:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5095.085,
          "impulse_high": 5116.885,
          "fib_entry_level": "62%",
          "entry": 5103.369,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5102.77,
              "high": 5112.395,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5117.897, planned_rr=3.0, touch=2026-03-09T09:20:00Z, outcome=sl_first",
      "entry": 5117.897,
      "stop": 5112.395,
      "target": 5134.405,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T09:20:00Z",
      "outcome_time": "2026-03-09T09:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5112.395,
          "impulse_high": 5126.875,
          "fib_entry_level": "62%",
          "entry": 5117.8974,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-30-00Z_short_breaker_continuation",
      "timestamp": "2026-03-09T09:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=5117.23, planned_rr=2.0, touch=2026-03-09T09:40:00Z, outcome=tp_first",
      "entry": 5117.23,
      "stop": 5132.765,
      "target": 5086.16,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-09T09:40:00Z",
      "outcome_time": "2026-03-09T10:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-30-00Z_short_breaker_continuation",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5132.765,
          "entry": 5117.23,
          "stop": 5132.765,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5111.24,
              "high": 5123.22,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5096.895,
              "high": 5099.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-09T09:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=5117.23, planned_rr=2.0, touch=2026-03-09T09:40:00Z, outcome=tp_first",
      "entry": 5117.23,
      "stop": 5132.765,
      "target": 5086.16,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-09T09:40:00Z",
      "outcome_time": "2026-03-09T10:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5132.765,
          "entry": 5117.23,
          "stop": 5132.765,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5111.24,
              "high": 5123.22,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5096.895,
              "high": 5099.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T09-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T09:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5102.79, planned_rr=2.0, touch=2026-03-09T09:40:00Z, outcome=sl_first",
      "entry": 5102.79,
      "stop": 5132.765,
      "target": 5042.84,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T09:40:00Z",
      "outcome_time": "2026-03-09T19:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T09-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5132.765,
          "entry": 5102.79,
          "stop": 5132.765,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5102.407, planned_rr=2.0, touch=2026-03-09T12:20:00Z, outcome=sl_first",
      "entry": 5102.407,
      "stop": 5094.535,
      "target": 5118.152,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T12:20:00Z",
      "outcome_time": "2026-03-09T12:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5094.535,
          "impulse_high": 5110.28,
          "fib_entry_level": "50%",
          "entry": 5102.407499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5099.845,
              "high": 5103.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5100.518, planned_rr=3.0, touch=2026-03-09T12:20:00Z, outcome=sl_first",
      "entry": 5100.518,
      "stop": 5094.535,
      "target": 5118.467,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T12:20:00Z",
      "outcome_time": "2026-03-09T12:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5094.535,
          "impulse_high": 5110.28,
          "fib_entry_level": "62%",
          "entry": 5100.5181,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5099.845,
              "high": 5103.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5100.387, planned_rr=2.0, touch=2026-03-09T12:50:00Z, outcome=tp_first",
      "entry": 5100.387,
      "stop": 5107.295,
      "target": 5086.572,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-09T12:50:00Z",
      "outcome_time": "2026-03-09T13:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5093.48,
          "impulse_high": 5107.295,
          "fib_entry_level": "50%",
          "entry": 5100.3875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5099.475,
              "high": 5103.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5102.045, planned_rr=3.0, touch=2026-03-09T13:30:00Z, outcome=sl_first",
      "entry": 5102.045,
      "stop": 5107.295,
      "target": 5086.296,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T13:30:00Z",
      "outcome_time": "2026-03-09T13:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5093.48,
          "impulse_high": 5107.295,
          "fib_entry_level": "62%",
          "entry": 5102.0453,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5099.475,
              "high": 5103.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5092.91, planned_rr=2.0, touch=2026-03-09T13:40:00Z, outcome=sl_first",
      "entry": 5092.91,
      "stop": 5111.52,
      "target": 5055.69,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T13:40:00Z",
      "outcome_time": "2026-03-09T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5074.3,
          "impulse_high": 5111.52,
          "fib_entry_level": "50%",
          "entry": 5092.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5084.795,
              "high": 5098.51,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5097.376, planned_rr=3.0, touch=2026-03-09T13:35:00Z, outcome=sl_first",
      "entry": 5097.376,
      "stop": 5111.52,
      "target": 5054.946,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T13:35:00Z",
      "outcome_time": "2026-03-09T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5074.3,
          "impulse_high": 5111.52,
          "fib_entry_level": "62%",
          "entry": 5097.3764,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5084.795,
              "high": 5098.51,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T13-30-00Z_long_breaker_continuation",
      "timestamp": "2026-03-09T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5101.872, planned_rr=2.0, touch=2026-03-09T13:35:00Z, outcome=sl_first",
      "entry": 5101.872,
      "stop": 5074.3,
      "target": 5157.017,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T13:35:00Z",
      "outcome_time": "2026-03-09T13:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T13-30-00Z_long_breaker_continuation",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5074.3,
          "entry": 5101.8724999999995,
          "stop": 5074.3,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5099.845,
              "high": 5103.9,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5084.41,
              "high": 5085.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5093.287, planned_rr=3.0, touch=2026-03-09T14:35:00Z, outcome=sl_first",
      "entry": 5093.287,
      "stop": 5079.985,
      "target": 5133.193,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T14:35:00Z",
      "outcome_time": "2026-03-09T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5079.985,
          "impulse_high": 5114.99,
          "fib_entry_level": "62%",
          "entry": 5093.2869,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5100.995, planned_rr=2.0, touch=2026-03-09T14:50:00Z, outcome=sl_first",
      "entry": 5100.995,
      "stop": 5116.28,
      "target": 5070.425,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T14:50:00Z",
      "outcome_time": "2026-03-09T18:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5085.71,
          "impulse_high": 5116.28,
          "fib_entry_level": "50%",
          "entry": 5100.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5099.475,
              "high": 5103.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5104.663, planned_rr=3.0, touch=2026-03-09T16:00:00Z, outcome=sl_first",
      "entry": 5104.663,
      "stop": 5116.28,
      "target": 5069.814,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T16:00:00Z",
      "outcome_time": "2026-03-09T18:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5085.71,
          "impulse_high": 5116.28,
          "fib_entry_level": "62%",
          "entry": 5104.6633999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T14-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-09T14:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=5101.688, planned_rr=2.0, touch=2026-03-09T14:50:00Z, outcome=sl_first",
      "entry": 5101.688,
      "stop": 5116.28,
      "target": 5072.503,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T14:50:00Z",
      "outcome_time": "2026-03-09T18:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T14-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5116.28,
          "entry": 5101.6875,
          "stop": 5116.28,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5099.475,
              "high": 5103.9,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5084.795,
              "high": 5098.51,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T14-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-09T14:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5094.125, planned_rr=2.0, touch=2026-03-09T14:50:00Z, outcome=sl_first",
      "entry": 5094.125,
      "stop": 5116.28,
      "target": 5049.815,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T14:50:00Z",
      "outcome_time": "2026-03-09T18:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T14-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5116.28,
          "entry": 5094.125,
          "stop": 5116.28,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-09T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-09T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5142.578, planned_rr=3.0, touch=2026-03-09T22:50:00Z, outcome=sl_first",
      "entry": 5142.578,
      "stop": 5136.015,
      "target": 5162.265,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-09T22:50:00Z",
      "outcome_time": "2026-03-09T23:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-09T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-09",
        "timestamp": "2026-03-09T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5136.015,
          "impulse_high": 5153.285,
          "fib_entry_level": "62%",
          "entry": 5142.5776000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5171.95,
            "PDL": 5015.045,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T00-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-03-10T00:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5135.988, planned_rr=2.0, touch=2026-03-10T00:35:00Z, outcome=sl_first",
      "entry": 5135.988,
      "stop": 5124.89,
      "target": 5158.182,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T00:35:00Z",
      "outcome_time": "2026-03-10T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T00-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5124.89,
          "entry": 5135.9875,
          "stop": 5124.89,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5135.96,
              "high": 5136.015,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5139.365,
              "high": 5142.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T00-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-10T00:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5137.53, planned_rr=2.0, touch=2026-03-10T00:35:00Z, outcome=sl_first",
      "entry": 5137.53,
      "stop": 5124.89,
      "target": 5162.81,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T00:35:00Z",
      "outcome_time": "2026-03-10T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T00-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5124.89,
          "entry": 5137.53,
          "stop": 5124.89,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T01-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-03-10T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 5135.988,
      "stop": 5124.835,
      "target": 5158.293,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-03-10T01-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5124.835,
          "entry": 5135.9875,
          "stop": 5124.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5135.96,
              "high": 5136.015,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 5139.365,
              "high": 5142.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-10T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=5143.735, planned_rr=2.0, touch=2026-03-10T01:05:00Z, outcome=tp_first",
      "entry": 5143.735,
      "stop": 5124.835,
      "target": 5181.535,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-10T01:05:00Z",
      "outcome_time": "2026-03-10T01:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T01-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5124.835,
          "entry": 5143.735,
          "stop": 5124.835,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5172.675, planned_rr=3.0, touch=2026-03-10T01:50:00Z, outcome=sl_first",
      "entry": 5172.675,
      "stop": 5164.23,
      "target": 5198.012,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T01:50:00Z",
      "outcome_time": "2026-03-10T02:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5164.23,
          "impulse_high": 5186.455,
          "fib_entry_level": "62%",
          "entry": 5172.675499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T07-15-00Z_long_breaker_continuation",
      "timestamp": "2026-03-10T07:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=5167.31, planned_rr=2.0, touch=2026-03-10T07:20:00Z, outcome=sl_first",
      "entry": 5167.31,
      "stop": 5158.395,
      "target": 5185.14,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T07:20:00Z",
      "outcome_time": "2026-03-10T07:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T07-15-00Z_long_breaker_continuation",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 5158.395,
          "entry": 5167.3099999999995,
          "stop": 5158.395,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5165.525,
              "high": 5169.095,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 5167.465,
              "high": 5174.365,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5187.215, planned_rr=3.0, touch=2026-03-10T08:35:00Z, outcome=sl_first",
      "entry": 5187.215,
      "stop": 5182.885,
      "target": 5200.205,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T08:35:00Z",
      "outcome_time": "2026-03-10T08:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5182.885,
          "impulse_high": 5194.28,
          "fib_entry_level": "62%",
          "entry": 5187.2151,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5172.559, planned_rr=3.0, touch=2026-03-10T10:50:00Z, outcome=tp_first",
      "entry": 5172.559,
      "stop": 5169.05,
      "target": 5183.087,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-10T10:50:00Z",
      "outcome_time": "2026-03-10T11:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T10-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5169.05,
          "impulse_high": 5178.285,
          "fib_entry_level": "62%",
          "entry": 5172.5593,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5182.438, planned_rr=3.0, touch=2026-03-10T11:05:00Z, outcome=sl_first",
      "entry": 5182.438,
      "stop": 5176.55,
      "target": 5200.102,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T11:05:00Z",
      "outcome_time": "2026-03-10T11:40:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5176.55,
          "impulse_high": 5192.045,
          "fib_entry_level": "62%",
          "entry": 5182.4381,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5194.307, planned_rr=2.0, touch=2026-03-10T13:05:00Z, outcome=tp_first",
      "entry": 5194.307,
      "stop": 5186.005,
      "target": 5210.912,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-10T13:05:00Z",
      "outcome_time": "2026-03-10T13:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5186.005,
          "impulse_high": 5202.61,
          "fib_entry_level": "50%",
          "entry": 5194.3075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5189.6,
              "high": 5199.23,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5192.315, planned_rr=3.0, touch=2026-03-10T14:05:00Z, outcome=sl_first",
      "entry": 5192.315,
      "stop": 5186.005,
      "target": 5211.245,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T14:05:00Z",
      "outcome_time": "2026-03-10T14:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5186.005,
          "impulse_high": 5202.61,
          "fib_entry_level": "62%",
          "entry": 5192.3149,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5189.6,
              "high": 5199.23,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5214.077, planned_rr=2.0, touch=2026-03-10T13:20:00Z, outcome=sl_first",
      "entry": 5214.077,
      "stop": 5199.23,
      "target": 5243.772,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T13:20:00Z",
      "outcome_time": "2026-03-10T13:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5199.23,
          "impulse_high": 5228.925,
          "fib_entry_level": "50%",
          "entry": 5214.077499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5212.26,
              "high": 5221.595,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5210.514, planned_rr=3.0, touch=2026-03-10T13:30:00Z, outcome=sl_first",
      "entry": 5210.514,
      "stop": 5199.23,
      "target": 5244.366,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T13:30:00Z",
      "outcome_time": "2026-03-10T13:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5199.23,
          "impulse_high": 5228.925,
          "fib_entry_level": "62%",
          "entry": 5210.514099999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5204.35, planned_rr=2.0, touch=2026-03-10T14:35:00Z, outcome=tp_first",
      "entry": 5204.35,
      "stop": 5194.15,
      "target": 5224.75,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-10T14:35:00Z",
      "outcome_time": "2026-03-10T15:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5194.15,
          "impulse_high": 5214.55,
          "fib_entry_level": "50%",
          "entry": 5204.35,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5202.61,
              "high": 5207.27,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-10T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-10T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5192.388, planned_rr=3.0, touch=2026-03-10T19:50:00Z, outcome=sl_first",
      "entry": 5192.388,
      "stop": 5187.82,
      "target": 5206.09,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-10T19:50:00Z",
      "outcome_time": "2026-03-10T22:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-10T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-10",
        "timestamp": "2026-03-10T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5187.82,
          "impulse_high": 5199.84,
          "fib_entry_level": "62%",
          "entry": 5192.3876,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5238.775,
            "PDL": 5117.355,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T00-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-11T00:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-03-11T00-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5198.34,
          "entry": 5211.3575,
          "stop": 5198.34,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5209.86,
              "high": 5212.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T00-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-11T00:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5192.885, planned_rr=2.0, touch=2026-03-11T00:10:00Z, outcome=sl_first",
      "entry": 5192.885,
      "stop": 5198.34,
      "target": 5181.975,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T00:10:00Z",
      "outcome_time": "2026-03-11T00:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T00-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5198.34,
          "entry": 5192.885,
          "stop": 5198.34,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5203.705, planned_rr=2.0, touch=2026-03-11T00:20:00Z, outcome=sl_first",
      "entry": 5203.705,
      "stop": 5191.665,
      "target": 5227.785,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T00:20:00Z",
      "outcome_time": "2026-03-11T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5191.665,
          "impulse_high": 5215.745,
          "fib_entry_level": "50%",
          "entry": 5203.705,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5198.34,
              "high": 5205.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5200.815, planned_rr=3.0, touch=2026-03-11T02:00:00Z, outcome=sl_first",
      "entry": 5200.815,
      "stop": 5191.665,
      "target": 5228.267,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T02:00:00Z",
      "outcome_time": "2026-03-11T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5191.665,
          "impulse_high": 5215.745,
          "fib_entry_level": "62%",
          "entry": 5200.8153999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5198.34,
              "high": 5205.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5203.841, planned_rr=3.0, touch=2026-03-11T02:15:00Z, outcome=sl_first",
      "entry": 5203.841,
      "stop": 5209.86,
      "target": 5185.783,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T02:15:00Z",
      "outcome_time": "2026-03-11T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5194.02,
          "impulse_high": 5209.86,
          "fib_entry_level": "62%",
          "entry": 5203.8408,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T02-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5212.608, planned_rr=3.0, touch=2026-03-11T03:10:00Z, outcome=sl_first",
      "entry": 5212.608,
      "stop": 5207.685,
      "target": 5227.377,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T03:10:00Z",
      "outcome_time": "2026-03-11T03:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T02-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5207.685,
          "impulse_high": 5220.64,
          "fib_entry_level": "62%",
          "entry": 5212.6079,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T03-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5209.775, planned_rr=2.0, touch=2026-03-11T03:20:00Z, outcome=tp_first",
      "entry": 5209.775,
      "stop": 5214.94,
      "target": 5199.445,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-11T03:20:00Z",
      "outcome_time": "2026-03-11T03:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T03-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5204.61,
          "impulse_high": 5214.94,
          "fib_entry_level": "50%",
          "entry": 5209.775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5209.7,
              "high": 5211.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5201.762, planned_rr=3.0, touch=2026-03-11T06:05:00Z, outcome=sl_first",
      "entry": 5201.762,
      "stop": 5196.4,
      "target": 5217.847,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T06:05:00Z",
      "outcome_time": "2026-03-11T06:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5196.4,
          "impulse_high": 5210.51,
          "fib_entry_level": "62%",
          "entry": 5201.7618,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5195.715,
              "high": 5201.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5201.01, planned_rr=3.0, touch=2026-03-11T06:35:00Z, outcome=tp_first",
      "entry": 5201.01,
      "stop": 5206.82,
      "target": 5183.579,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T06:35:00Z",
      "outcome_time": "2026-03-11T08:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5191.53,
          "impulse_high": 5206.82,
          "fib_entry_level": "62%",
          "entry": 5201.0098,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5199.28,
              "high": 5203.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5193.194, planned_rr=3.0, touch=2026-03-11T07:35:00Z, outcome=sl_first",
      "entry": 5193.194,
      "stop": 5198.485,
      "target": 5177.319,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T07:35:00Z",
      "outcome_time": "2026-03-11T08:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5184.56,
          "impulse_high": 5198.485,
          "fib_entry_level": "62%",
          "entry": 5193.1935,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5191.796, planned_rr=3.0, touch=2026-03-11T08:20:00Z, outcome=tp_first",
      "entry": 5191.796,
      "stop": 5198.4,
      "target": 5171.982,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T08:20:00Z",
      "outcome_time": "2026-03-11T12:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5181.02,
          "impulse_high": 5198.4,
          "fib_entry_level": "62%",
          "entry": 5191.7956,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5186.363, planned_rr=3.0, touch=2026-03-11T10:45:00Z, outcome=sl_first",
      "entry": 5186.363,
      "stop": 5191.96,
      "target": 5169.57,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T10:45:00Z",
      "outcome_time": "2026-03-11T11:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5177.23,
          "impulse_high": 5191.96,
          "fib_entry_level": "62%",
          "entry": 5186.3625999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5183.721, planned_rr=3.0, touch=2026-03-11T12:30:00Z, outcome=sl_first",
      "entry": 5183.721,
      "stop": 5177.865,
      "target": 5201.288,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T12:30:00Z",
      "outcome_time": "2026-03-11T12:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5177.865,
          "impulse_high": 5193.275,
          "fib_entry_level": "62%",
          "entry": 5183.7208,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5185.22, planned_rr=2.0, touch=2026-03-11T14:00:00Z, outcome=tp_first",
      "entry": 5185.22,
      "stop": 5197.175,
      "target": 5161.31,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-11T14:00:00Z",
      "outcome_time": "2026-03-11T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5173.265,
          "impulse_high": 5197.175,
          "fib_entry_level": "50%",
          "entry": 5185.22,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5180.955,
              "high": 5188.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5188.089, planned_rr=3.0, touch=2026-03-11T14:05:00Z, outcome=tp_first",
      "entry": 5188.089,
      "stop": 5197.175,
      "target": 5160.832,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T14:05:00Z",
      "outcome_time": "2026-03-11T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5173.265,
          "impulse_high": 5197.175,
          "fib_entry_level": "62%",
          "entry": 5188.0892,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-30-00Z_short_breaker_continuation",
      "timestamp": "2026-03-11T12:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=5184.477, planned_rr=2.0, touch=2026-03-11T14:00:00Z, outcome=tp_first",
      "entry": 5184.477,
      "stop": 5197.175,
      "target": 5159.082,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-11T14:00:00Z",
      "outcome_time": "2026-03-11T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-30-00Z_short_breaker_continuation",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5197.175,
          "entry": 5184.4775,
          "stop": 5197.175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5180.955,
              "high": 5188.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-11T12:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=5184.477, planned_rr=2.0, touch=2026-03-11T14:00:00Z, outcome=tp_first",
      "entry": 5184.477,
      "stop": 5197.175,
      "target": 5159.082,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-11T14:00:00Z",
      "outcome_time": "2026-03-11T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 5197.175,
          "entry": 5184.4775,
          "stop": 5197.175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5180.955,
              "high": 5188.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-11T12:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=5180.225, planned_rr=2.0, touch=2026-03-11T12:35:00Z, outcome=tp_first",
      "entry": 5180.225,
      "stop": 5197.175,
      "target": 5146.325,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-11T12:35:00Z",
      "outcome_time": "2026-03-11T22:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5197.175,
          "entry": 5180.225,
          "stop": 5197.175,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5175.589, planned_rr=3.0, touch=2026-03-11T12:50:00Z, outcome=sl_first",
      "entry": 5175.589,
      "stop": 5180.955,
      "target": 5159.493,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T12:50:00Z",
      "outcome_time": "2026-03-11T13:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5166.835,
          "impulse_high": 5180.955,
          "fib_entry_level": "62%",
          "entry": 5175.5894,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5169.735, planned_rr=3.0, touch=2026-03-11T13:30:00Z, outcome=sl_first",
      "entry": 5169.735,
      "stop": 5162.175,
      "target": 5192.415,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T13:30:00Z",
      "outcome_time": "2026-03-11T13:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5162.175,
          "impulse_high": 5182.07,
          "fib_entry_level": "62%",
          "entry": 5169.7351,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-03-11T13:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5179.8, planned_rr=2.0, touch=2026-03-11T13:05:00Z, outcome=sl_first",
      "entry": 5179.8,
      "stop": 5162.175,
      "target": 5215.05,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T13:05:00Z",
      "outcome_time": "2026-03-11T13:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5162.175,
          "entry": 5179.8,
          "stop": 5162.175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5177.25,
              "high": 5182.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-11T13:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5177.895, planned_rr=2.0, touch=2026-03-11T13:05:00Z, outcome=sl_first",
      "entry": 5177.895,
      "stop": 5162.175,
      "target": 5209.335,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T13:05:00Z",
      "outcome_time": "2026-03-11T13:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5162.175,
          "entry": 5177.895,
          "stop": 5162.175,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5175.481, planned_rr=3.0, touch=2026-03-11T13:35:00Z, outcome=tp_first",
      "entry": 5175.481,
      "stop": 5181.555,
      "target": 5157.258,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T13:35:00Z",
      "outcome_time": "2026-03-11T13:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5165.57,
          "impulse_high": 5181.555,
          "fib_entry_level": "62%",
          "entry": 5175.4807,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-03-11T13:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=5179.8, planned_rr=2.0, touch=2026-03-11T14:00:00Z, outcome=sl_first",
      "entry": 5179.8,
      "stop": 5149.155,
      "target": 5241.09,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T14:00:00Z",
      "outcome_time": "2026-03-11T22:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 5149.155,
          "entry": 5179.8,
          "stop": 5149.155,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5177.25,
              "high": 5182.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T13-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-11T13:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5176.855, planned_rr=2.0, touch=2026-03-11T13:55:00Z, outcome=sl_first",
      "entry": 5176.855,
      "stop": 5149.155,
      "target": 5232.255,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T13:55:00Z",
      "outcome_time": "2026-03-11T22:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T13-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5149.155,
          "entry": 5176.855,
          "stop": 5149.155,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5180.973, planned_rr=3.0, touch=2026-03-11T14:05:00Z, outcome=sl_first",
      "entry": 5180.973,
      "stop": 5175.155,
      "target": 5198.426,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T14:05:00Z",
      "outcome_time": "2026-03-11T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5175.155,
          "impulse_high": 5190.465,
          "fib_entry_level": "62%",
          "entry": 5180.9728,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5177.25,
              "high": 5182.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5180.215, planned_rr=3.0, touch=2026-03-11T15:05:00Z, outcome=tp_first",
      "entry": 5180.215,
      "stop": 5185.9,
      "target": 5163.161,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T15:05:00Z",
      "outcome_time": "2026-03-11T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5170.94,
          "impulse_high": 5185.9,
          "fib_entry_level": "62%",
          "entry": 5180.2152,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5179.64,
              "high": 5180.635,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T22-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-11T22:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=5170.05, planned_rr=2.0, touch=2026-03-11T22:25:00Z, outcome=sl_first",
      "entry": 5170.05,
      "stop": 5165.58,
      "target": 5178.99,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T22:25:00Z",
      "outcome_time": "2026-03-11T22:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T22-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 5165.58,
          "entry": 5170.05,
          "stop": 5165.58,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5163.669, planned_rr=3.0, touch=2026-03-11T22:35:00Z, outcome=tp_first",
      "entry": 5163.669,
      "stop": 5170.085,
      "target": 5144.42,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T22:35:00Z",
      "outcome_time": "2026-03-11T22:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5153.2,
          "impulse_high": 5170.085,
          "fib_entry_level": "62%",
          "entry": 5163.6687,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5149.587, planned_rr=2.0, touch=2026-03-11T22:55:00Z, outcome=sl_first",
      "entry": 5149.587,
      "stop": 5169.345,
      "target": 5110.072,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T22:55:00Z",
      "outcome_time": "2026-03-12T01:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5129.83,
          "impulse_high": 5169.345,
          "fib_entry_level": "50%",
          "entry": 5149.5875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5147.495,
              "high": 5150.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5154.329, planned_rr=3.0, touch=2026-03-11T22:55:00Z, outcome=sl_first",
      "entry": 5154.329,
      "stop": 5169.345,
      "target": 5109.282,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T22:55:00Z",
      "outcome_time": "2026-03-12T01:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5129.83,
          "impulse_high": 5169.345,
          "fib_entry_level": "62%",
          "entry": 5154.3293,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5144.755, planned_rr=2.0, touch=2026-03-11T23:45:00Z, outcome=sl_first",
      "entry": 5144.755,
      "stop": 5135.315,
      "target": 5163.635,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T23:45:00Z",
      "outcome_time": "2026-03-11T23:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5135.315,
          "impulse_high": 5154.195,
          "fib_entry_level": "50%",
          "entry": 5144.754999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5142.365,
              "high": 5151.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5142.489, planned_rr=3.0, touch=2026-03-11T23:45:00Z, outcome=sl_first",
      "entry": 5142.489,
      "stop": 5135.315,
      "target": 5164.013,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-11T23:45:00Z",
      "outcome_time": "2026-03-11T23:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5135.315,
          "impulse_high": 5154.195,
          "fib_entry_level": "62%",
          "entry": 5142.4893999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5142.365,
              "high": 5151.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5153.473, planned_rr=3.0, touch=2026-03-12T00:25:00Z, outcome=sl_first",
      "entry": 5153.473,
      "stop": 5157.94,
      "target": 5140.072,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T00:25:00Z",
      "outcome_time": "2026-03-12T00:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5146.185,
          "impulse_high": 5157.94,
          "fib_entry_level": "62%",
          "entry": 5153.4731,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-11T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-11T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5142.099, planned_rr=3.0, touch=2026-03-11T23:50:00Z, outcome=tp_first",
      "entry": 5142.099,
      "stop": 5147.495,
      "target": 5125.911,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-11T23:50:00Z",
      "outcome_time": "2026-03-12T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-11T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-11",
        "timestamp": "2026-03-11T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5133.295,
          "impulse_high": 5147.495,
          "fib_entry_level": "62%",
          "entry": 5142.099,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5223.385,
            "PDL": 5149.155,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5148.63, planned_rr=2.0, touch=2026-03-12T00:20:00Z, outcome=tp_first",
      "entry": 5148.63,
      "stop": 5138.98,
      "target": 5167.93,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-12T00:20:00Z",
      "outcome_time": "2026-03-12T01:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5138.98,
          "impulse_high": 5158.28,
          "fib_entry_level": "50%",
          "entry": 5148.629999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5142.365,
              "high": 5151.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5146.314, planned_rr=3.0, touch=2026-03-12T00:20:00Z, outcome=tp_first",
      "entry": 5146.314,
      "stop": 5138.98,
      "target": 5168.316,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T00:20:00Z",
      "outcome_time": "2026-03-12T01:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5138.98,
          "impulse_high": 5158.28,
          "fib_entry_level": "62%",
          "entry": 5146.313999999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5142.365,
              "high": 5151.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5162.555, planned_rr=2.0, touch=2026-03-12T01:35:00Z, outcome=sl_first",
      "entry": 5162.555,
      "stop": 5154.75,
      "target": 5178.165,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T01:35:00Z",
      "outcome_time": "2026-03-12T02:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5154.75,
          "impulse_high": 5170.36,
          "fib_entry_level": "50%",
          "entry": 5162.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5161.175,
              "high": 5164.6,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5160.682, planned_rr=3.0, touch=2026-03-12T01:35:00Z, outcome=sl_first",
      "entry": 5160.682,
      "stop": 5154.75,
      "target": 5178.477,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T01:35:00Z",
      "outcome_time": "2026-03-12T02:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5154.75,
          "impulse_high": 5170.36,
          "fib_entry_level": "62%",
          "entry": 5160.6818,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5148.29, planned_rr=2.0, touch=2026-03-12T04:35:00Z, outcome=tp_first",
      "entry": 5148.29,
      "stop": 5152.755,
      "target": 5139.36,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-12T04:35:00Z",
      "outcome_time": "2026-03-12T05:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5143.825,
          "impulse_high": 5152.755,
          "fib_entry_level": "50%",
          "entry": 5148.29,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5146.78,
              "high": 5150.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5149.362, planned_rr=3.0, touch=2026-03-12T04:35:00Z, outcome=tp_first",
      "entry": 5149.362,
      "stop": 5152.755,
      "target": 5139.181,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T04:35:00Z",
      "outcome_time": "2026-03-12T05:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5143.825,
          "impulse_high": 5152.755,
          "fib_entry_level": "62%",
          "entry": 5149.3616,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5146.78,
              "high": 5150.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5183.743, planned_rr=2.0, touch=2026-03-12T10:20:00Z, outcome=tp_first",
      "entry": 5183.743,
      "stop": 5187.405,
      "target": 5176.418,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-12T10:20:00Z",
      "outcome_time": "2026-03-12T10:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5180.08,
          "impulse_high": 5187.405,
          "fib_entry_level": "50%",
          "entry": 5183.7425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5183.27,
              "high": 5186.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5184.622, planned_rr=3.0, touch=2026-03-12T10:20:00Z, outcome=tp_first",
      "entry": 5184.622,
      "stop": 5187.405,
      "target": 5176.271,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T10:20:00Z",
      "outcome_time": "2026-03-12T10:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5180.08,
          "impulse_high": 5187.405,
          "fib_entry_level": "62%",
          "entry": 5184.6215,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5183.27,
              "high": 5186.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5173.995, planned_rr=2.0, touch=2026-03-12T12:05:00Z, outcome=sl_first",
      "entry": 5173.995,
      "stop": 5180.61,
      "target": 5160.765,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T12:05:00Z",
      "outcome_time": "2026-03-12T12:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5167.38,
          "impulse_high": 5180.61,
          "fib_entry_level": "50%",
          "entry": 5173.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5172.925,
              "high": 5176.545,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5171.385,
              "high": 5178.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5175.583, planned_rr=3.0, touch=2026-03-12T12:30:00Z, outcome=sl_first",
      "entry": 5175.583,
      "stop": 5180.61,
      "target": 5160.5,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T12:30:00Z",
      "outcome_time": "2026-03-12T12:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5167.38,
          "impulse_high": 5180.61,
          "fib_entry_level": "62%",
          "entry": 5175.5826,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5172.925,
              "high": 5176.545,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5171.385,
              "high": 5178.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5178.63, planned_rr=3.0, touch=2026-03-12T12:55:00Z, outcome=sl_first",
      "entry": 5178.63,
      "stop": 5174.19,
      "target": 5191.951,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T12:55:00Z",
      "outcome_time": "2026-03-12T13:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5174.19,
          "impulse_high": 5185.875,
          "fib_entry_level": "62%",
          "entry": 5178.6303,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5176.54,
              "high": 5178.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5154.774, planned_rr=3.0, touch=2026-03-12T13:50:00Z, outcome=sl_first",
      "entry": 5154.774,
      "stop": 5160.1,
      "target": 5138.797,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T13:50:00Z",
      "outcome_time": "2026-03-12T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5146.085,
          "impulse_high": 5160.1,
          "fib_entry_level": "62%",
          "entry": 5154.7743,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5131.637, planned_rr=3.0, touch=2026-03-12T15:05:00Z, outcome=tp_first",
      "entry": 5131.637,
      "stop": 5144.99,
      "target": 5091.577,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T15:05:00Z",
      "outcome_time": "2026-03-12T18:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5109.85,
          "impulse_high": 5144.99,
          "fib_entry_level": "62%",
          "entry": 5131.6368,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5087.335, planned_rr=2.0, touch=2026-03-12T19:05:00Z, outcome=sl_first",
      "entry": 5087.335,
      "stop": 5095.3,
      "target": 5071.405,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T19:05:00Z",
      "outcome_time": "2026-03-12T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5079.37,
          "impulse_high": 5095.3,
          "fib_entry_level": "50%",
          "entry": 5087.335,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5083.71,
              "high": 5090.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5089.247, planned_rr=3.0, touch=2026-03-12T19:05:00Z, outcome=sl_first",
      "entry": 5089.247,
      "stop": 5095.3,
      "target": 5071.086,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-12T19:05:00Z",
      "outcome_time": "2026-03-12T19:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5079.37,
          "impulse_high": 5095.3,
          "fib_entry_level": "62%",
          "entry": 5089.2466,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5083.71,
              "high": 5090.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5080.243, planned_rr=2.0, touch=2026-03-12T20:20:00Z, outcome=tp_first",
      "entry": 5080.243,
      "stop": 5089.045,
      "target": 5062.638,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-12T20:20:00Z",
      "outcome_time": "2026-03-12T20:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5071.44,
          "impulse_high": 5089.045,
          "fib_entry_level": "50%",
          "entry": 5080.2425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5073.1,
              "high": 5083.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5082.355, planned_rr=3.0, touch=2026-03-12T20:20:00Z, outcome=tp_first",
      "entry": 5082.355,
      "stop": 5089.045,
      "target": 5062.285,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T20:20:00Z",
      "outcome_time": "2026-03-12T20:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5071.44,
          "impulse_high": 5089.045,
          "fib_entry_level": "62%",
          "entry": 5082.3551,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5073.1,
              "high": 5083.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5088.283, planned_rr=2.0, touch=2026-03-12T22:35:00Z, outcome=tp_first",
      "entry": 5088.283,
      "stop": 5081.02,
      "target": 5102.807,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-12T22:35:00Z",
      "outcome_time": "2026-03-13T00:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5081.02,
          "impulse_high": 5095.545,
          "fib_entry_level": "50%",
          "entry": 5088.2825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5085.58,
              "high": 5092.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-12T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-12T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5086.539, planned_rr=3.0, touch=2026-03-12T22:35:00Z, outcome=tp_first",
      "entry": 5086.539,
      "stop": 5081.02,
      "target": 5103.098,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-12T22:35:00Z",
      "outcome_time": "2026-03-13T00:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-12T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-12",
        "timestamp": "2026-03-12T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5081.02,
          "impulse_high": 5095.545,
          "fib_entry_level": "62%",
          "entry": 5086.5395,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5085.58,
              "high": 5092.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5191.79,
            "PDL": 5055.125,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T01-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-13T01:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=5112.38, planned_rr=2.0, touch=2026-03-13T01:40:00Z, outcome=sl_first",
      "entry": 5112.38,
      "stop": 5121.795,
      "target": 5093.55,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T01:40:00Z",
      "outcome_time": "2026-03-13T01:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T01-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 5121.795,
          "entry": 5112.38,
          "stop": 5121.795,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5116.628, planned_rr=2.0, touch=2026-03-13T01:55:00Z, outcome=sl_first",
      "entry": 5116.628,
      "stop": 5108.72,
      "target": 5132.443,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T01:55:00Z",
      "outcome_time": "2026-03-13T03:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5108.72,
          "impulse_high": 5124.535,
          "fib_entry_level": "50%",
          "entry": 5116.6275000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5111.43,
              "high": 5121.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5114.73, planned_rr=3.0, touch=2026-03-13T01:50:00Z, outcome=sl_first",
      "entry": 5114.73,
      "stop": 5108.72,
      "target": 5132.759,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T01:50:00Z",
      "outcome_time": "2026-03-13T03:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5108.72,
          "impulse_high": 5124.535,
          "fib_entry_level": "62%",
          "entry": 5114.7297,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 5111.43,
              "high": 5121.795,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5109.17, planned_rr=2.0, touch=2026-03-13T04:20:00Z, outcome=tp_first",
      "entry": 5109.17,
      "stop": 5114.58,
      "target": 5098.35,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-13T04:20:00Z",
      "outcome_time": "2026-03-13T06:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5103.76,
          "impulse_high": 5114.58,
          "fib_entry_level": "50%",
          "entry": 5109.17,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5107.435,
              "high": 5112.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5110.468, planned_rr=3.0, touch=2026-03-13T04:20:00Z, outcome=tp_first",
      "entry": 5110.468,
      "stop": 5114.58,
      "target": 5098.134,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-13T04:20:00Z",
      "outcome_time": "2026-03-13T06:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5103.76,
          "impulse_high": 5114.58,
          "fib_entry_level": "62%",
          "entry": 5110.4684,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5107.435,
              "high": 5112.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5098.363, planned_rr=3.0, touch=2026-03-13T06:20:00Z, outcome=tp_first",
      "entry": 5098.363,
      "stop": 5104.08,
      "target": 5081.212,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-13T06:20:00Z",
      "outcome_time": "2026-03-13T07:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5089.035,
          "impulse_high": 5104.08,
          "fib_entry_level": "62%",
          "entry": 5098.3629,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5081.188, planned_rr=2.0, touch=2026-03-13T07:25:00Z, outcome=sl_first",
      "entry": 5081.188,
      "stop": 5090.44,
      "target": 5062.683,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T07:25:00Z",
      "outcome_time": "2026-03-13T07:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5071.935,
          "impulse_high": 5090.44,
          "fib_entry_level": "50%",
          "entry": 5081.1875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5079.355,
              "high": 5082.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5083.408, planned_rr=3.0, touch=2026-03-13T07:25:00Z, outcome=sl_first",
      "entry": 5083.408,
      "stop": 5090.44,
      "target": 5062.312,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T07:25:00Z",
      "outcome_time": "2026-03-13T07:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5071.935,
          "impulse_high": 5090.44,
          "fib_entry_level": "62%",
          "entry": 5083.4081,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5078.361, planned_rr=3.0, touch=2026-03-13T08:10:00Z, outcome=sl_first",
      "entry": 5078.361,
      "stop": 5085.465,
      "target": 5057.049,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T08:10:00Z",
      "outcome_time": "2026-03-13T08:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5066.77,
          "impulse_high": 5085.465,
          "fib_entry_level": "62%",
          "entry": 5078.360900000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5072.654, planned_rr=3.0, touch=2026-03-13T08:20:00Z, outcome=sl_first",
      "entry": 5072.654,
      "stop": 5079.355,
      "target": 5052.55,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-13T08:20:00Z",
      "outcome_time": "2026-03-13T08:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5061.72,
          "impulse_high": 5079.355,
          "fib_entry_level": "62%",
          "entry": 5072.6537,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5100.188, planned_rr=2.0, touch=2026-03-13T11:55:00Z, outcome=tp_first",
      "entry": 5100.188,
      "stop": 5092.38,
      "target": 5115.802,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-13T11:55:00Z",
      "outcome_time": "2026-03-13T12:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5092.38,
          "impulse_high": 5107.995,
          "fib_entry_level": "50%",
          "entry": 5100.1875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5096.655,
              "high": 5107.505,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=5098.314, planned_rr=3.0, touch=2026-03-13T11:55:00Z, outcome=tp_first",
      "entry": 5098.314,
      "stop": 5092.38,
      "target": 5116.115,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-13T11:55:00Z",
      "outcome_time": "2026-03-13T12:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5092.38,
          "impulse_high": 5107.995,
          "fib_entry_level": "62%",
          "entry": 5098.3137,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 5096.655,
              "high": 5107.505,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5062.796, planned_rr=3.0, touch=2026-03-13T14:50:00Z, outcome=tp_first",
      "entry": 5062.796,
      "stop": 5079.505,
      "target": 5012.671,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-13T14:50:00Z",
      "outcome_time": "2026-03-13T19:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5035.535,
          "impulse_high": 5079.505,
          "fib_entry_level": "62%",
          "entry": 5062.7964,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-13T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-13T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5058.324, planned_rr=3.0, touch=2026-03-13T15:35:00Z, outcome=tp_first",
      "entry": 5058.324,
      "stop": 5068.39,
      "target": 5028.125,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-13T15:35:00Z",
      "outcome_time": "2026-03-13T16:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-13T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-13",
        "timestamp": "2026-03-13T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5041.9,
          "impulse_high": 5068.39,
          "fib_entry_level": "62%",
          "entry": 5058.3238,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-15T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-15T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5015.096, planned_rr=3.0, touch=2026-03-15T22:30:00Z, outcome=sl_first",
      "entry": 5015.096,
      "stop": 5023.79,
      "target": 4989.012,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-15T22:30:00Z",
      "outcome_time": "2026-03-15T22:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-15T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-15",
        "timestamp": "2026-03-15T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5000.91,
          "impulse_high": 5023.79,
          "fib_entry_level": "62%",
          "entry": 5015.0956,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-15T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-15T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5017.198, planned_rr=3.0, touch=2026-03-16T00:00:00Z, outcome=sl_first",
      "entry": 5017.198,
      "stop": 5026.335,
      "target": 4989.787,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T00:00:00Z",
      "outcome_time": "2026-03-16T00:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-15T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-15",
        "timestamp": "2026-03-15T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5002.29,
          "impulse_high": 5026.335,
          "fib_entry_level": "62%",
          "entry": 5017.1979,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-15T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-15T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4992.677, planned_rr=3.0, touch=2026-03-15T23:20:00Z, outcome=sl_first",
      "entry": 4992.677,
      "stop": 5007.94,
      "target": 4946.889,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-15T23:20:00Z",
      "outcome_time": "2026-03-16T00:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-15T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-15",
        "timestamp": "2026-03-15T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4967.775,
          "impulse_high": 5007.94,
          "fib_entry_level": "62%",
          "entry": 4992.677299999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4992.46,
              "high": 5002.29,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5128.475,
            "PDL": 5009.745,
            "PWH": 5238.775,
            "PWL": 5009.745
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5006.493, planned_rr=2.0, touch=2026-03-16T01:10:00Z, outcome=sl_first",
      "entry": 5006.493,
      "stop": 5026.66,
      "target": 4966.158,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T01:10:00Z",
      "outcome_time": "2026-03-16T06:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4986.325,
          "impulse_high": 5026.66,
          "fib_entry_level": "50%",
          "entry": 5006.4925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5005.735,
              "high": 5017.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5011.333, planned_rr=3.0, touch=2026-03-16T01:10:00Z, outcome=sl_first",
      "entry": 5011.333,
      "stop": 5026.66,
      "target": 4965.351,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T01:10:00Z",
      "outcome_time": "2026-03-16T06:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4986.325,
          "impulse_high": 5026.66,
          "fib_entry_level": "62%",
          "entry": 5011.3327,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5005.735,
              "high": 5017.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T06-00-00Z_short_breaker_continuation",
      "timestamp": "2026-03-16T06:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=5024.333, planned_rr=2.0, touch=2026-03-16T06:10:00Z, outcome=sl_first",
      "entry": 5024.333,
      "stop": 5027.92,
      "target": 5017.158,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T06:10:00Z",
      "outcome_time": "2026-03-16T06:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T06-00-00Z_short_breaker_continuation",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5027.92,
          "entry": 5024.3325,
          "stop": 5027.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5023.045,
              "high": 5025.62,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5016.59,
              "high": 5021.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5016.342, planned_rr=3.0, touch=2026-03-16T07:05:00Z, outcome=tp_first",
      "entry": 5016.342,
      "stop": 5023.045,
      "target": 4996.232,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-16T07:05:00Z",
      "outcome_time": "2026-03-16T07:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5005.405,
          "impulse_high": 5023.045,
          "fib_entry_level": "62%",
          "entry": 5016.3418,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5005.667, planned_rr=3.0, touch=2026-03-16T07:20:00Z, outcome=tp_first",
      "entry": 5005.667,
      "stop": 5010.035,
      "target": 4992.563,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-16T07:20:00Z",
      "outcome_time": "2026-03-16T07:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4998.54,
          "impulse_high": 5010.035,
          "fib_entry_level": "62%",
          "entry": 5005.6669,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4999.665, planned_rr=2.0, touch=2026-03-16T07:35:00Z, outcome=tp_first",
      "entry": 4999.665,
      "stop": 5007.435,
      "target": 4984.125,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-16T07:35:00Z",
      "outcome_time": "2026-03-16T09:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4991.895,
          "impulse_high": 5007.435,
          "fib_entry_level": "50%",
          "entry": 4999.665000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4992.85,
              "high": 5000.055,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4988.055,
              "high": 5003.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5001.53, planned_rr=3.0, touch=2026-03-16T07:35:00Z, outcome=tp_first",
      "entry": 5001.53,
      "stop": 5007.435,
      "target": 4983.814,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-16T07:35:00Z",
      "outcome_time": "2026-03-16T09:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4991.895,
          "impulse_high": 5007.435,
          "fib_entry_level": "62%",
          "entry": 5001.5298,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4988.055,
              "high": 5003.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4991.927, planned_rr=2.0, touch=2026-03-16T08:35:00Z, outcome=tp_first",
      "entry": 4991.927,
      "stop": 4998.74,
      "target": 4978.302,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-16T08:35:00Z",
      "outcome_time": "2026-03-16T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4985.115,
          "impulse_high": 4998.74,
          "fib_entry_level": "50%",
          "entry": 4991.9275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4988.055,
              "high": 5003.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4993.562, planned_rr=3.0, touch=2026-03-16T08:35:00Z, outcome=tp_first",
      "entry": 4993.562,
      "stop": 4998.74,
      "target": 4978.03,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-16T08:35:00Z",
      "outcome_time": "2026-03-16T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4985.115,
          "impulse_high": 4998.74,
          "fib_entry_level": "62%",
          "entry": 4993.5625,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4992.85,
              "high": 5000.055,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4988.055,
              "high": 5003.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5008.695, planned_rr=3.0, touch=2026-03-16T11:50:00Z, outcome=sl_first",
      "entry": 5008.695,
      "stop": 5018.45,
      "target": 4979.432,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T11:50:00Z",
      "outcome_time": "2026-03-16T12:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4992.78,
          "impulse_high": 5018.45,
          "fib_entry_level": "62%",
          "entry": 5008.6954,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5006.95,
              "high": 5013.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4988.185, planned_rr=2.0, touch=2026-03-16T16:20:00Z, outcome=sl_first",
      "entry": 4988.185,
      "stop": 4998.12,
      "target": 4968.315,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T16:20:00Z",
      "outcome_time": "2026-03-16T17:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4978.25,
          "impulse_high": 4998.12,
          "fib_entry_level": "50%",
          "entry": 4988.1849999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4985.745,
              "high": 4998.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-16T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-16T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4990.569, planned_rr=3.0, touch=2026-03-16T16:20:00Z, outcome=sl_first",
      "entry": 4990.569,
      "stop": 4998.12,
      "target": 4967.918,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-16T16:20:00Z",
      "outcome_time": "2026-03-16T17:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-16T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-16",
        "timestamp": "2026-03-16T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4978.25,
          "impulse_high": 4998.12,
          "fib_entry_level": "62%",
          "entry": 4990.5694,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4985.745,
              "high": 4998.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5038.145,
            "PDL": 4967.775,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5009.655, planned_rr=3.0, touch=2026-03-17T00:05:00Z, outcome=tp_first",
      "entry": 5009.655,
      "stop": 5014.2,
      "target": 4996.021,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-17T00:05:00Z",
      "outcome_time": "2026-03-17T01:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5002.24,
          "impulse_high": 5014.2,
          "fib_entry_level": "62%",
          "entry": 5009.6552,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5026.478, planned_rr=3.0, touch=2026-03-17T02:05:00Z, outcome=sl_first",
      "entry": 5026.478,
      "stop": 5029.98,
      "target": 5015.973,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T02:05:00Z",
      "outcome_time": "2026-03-17T03:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5020.765,
          "impulse_high": 5029.98,
          "fib_entry_level": "62%",
          "entry": 5026.4783,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5026.473, planned_rr=3.0, touch=2026-03-17T02:50:00Z, outcome=sl_first",
      "entry": 5026.473,
      "stop": 5029.54,
      "target": 5017.274,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T02:50:00Z",
      "outcome_time": "2026-03-17T03:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5021.47,
          "impulse_high": 5029.54,
          "fib_entry_level": "62%",
          "entry": 5026.4734,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5026.722, planned_rr=2.0, touch=2026-03-17T05:50:00Z, outcome=tp_first",
      "entry": 5026.722,
      "stop": 5033.325,
      "target": 5013.517,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-17T05:50:00Z",
      "outcome_time": "2026-03-17T06:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5020.12,
          "impulse_high": 5033.325,
          "fib_entry_level": "50%",
          "entry": 5026.7225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5023.065,
              "high": 5031.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5028.307, planned_rr=3.0, touch=2026-03-17T05:50:00Z, outcome=tp_first",
      "entry": 5028.307,
      "stop": 5033.325,
      "target": 5013.253,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-17T05:50:00Z",
      "outcome_time": "2026-03-17T06:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5020.12,
          "impulse_high": 5033.325,
          "fib_entry_level": "62%",
          "entry": 5028.3071,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5023.065,
              "high": 5031.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5015.042, planned_rr=2.0, touch=2026-03-17T06:05:00Z, outcome=sl_first",
      "entry": 5015.042,
      "stop": 5023.065,
      "target": 4998.997,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T06:05:00Z",
      "outcome_time": "2026-03-17T07:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5007.02,
          "impulse_high": 5023.065,
          "fib_entry_level": "50%",
          "entry": 5015.0425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5014.33,
              "high": 5020.12,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5016.968, planned_rr=3.0, touch=2026-03-17T06:05:00Z, outcome=sl_first",
      "entry": 5016.968,
      "stop": 5023.065,
      "target": 4998.677,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T06:05:00Z",
      "outcome_time": "2026-03-17T07:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5007.02,
          "impulse_high": 5023.065,
          "fib_entry_level": "62%",
          "entry": 5016.9679,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5014.33,
              "high": 5020.12,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5019.66, planned_rr=2.0, touch=2026-03-17T09:05:00Z, outcome=tp_first",
      "entry": 5019.66,
      "stop": 5026.055,
      "target": 5006.87,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-17T09:05:00Z",
      "outcome_time": "2026-03-17T10:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5013.265,
          "impulse_high": 5026.055,
          "fib_entry_level": "50%",
          "entry": 5019.66,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5014.33,
              "high": 5020.12,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 5018.685,
              "high": 5025.61,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5008.059, planned_rr=3.0, touch=2026-03-17T11:50:00Z, outcome=sl_first",
      "entry": 5008.059,
      "stop": 5011.635,
      "target": 4997.332,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T11:50:00Z",
      "outcome_time": "2026-03-17T12:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5002.225,
          "impulse_high": 5011.635,
          "fib_entry_level": "62%",
          "entry": 5008.059200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T11-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-17T11:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-03-17T11-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 5011.635,
          "entry": 5022.1475,
          "stop": 5011.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5018.685,
              "high": 5025.61,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 5009.44,
              "high": 5010.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5016.61, planned_rr=2.0, touch=2026-03-17T13:50:00Z, outcome=tp_first",
      "entry": 5016.61,
      "stop": 5027.63,
      "target": 4994.57,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-17T13:50:00Z",
      "outcome_time": "2026-03-17T15:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5005.59,
          "impulse_high": 5027.63,
          "fib_entry_level": "50%",
          "entry": 5016.610000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5006.33,
              "high": 5017.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5019.255, planned_rr=3.0, touch=2026-03-17T13:50:00Z, outcome=tp_first",
      "entry": 5019.255,
      "stop": 5027.63,
      "target": 4994.129,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-17T13:50:00Z",
      "outcome_time": "2026-03-17T15:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5005.59,
          "impulse_high": 5027.63,
          "fib_entry_level": "62%",
          "entry": 5019.2548,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5012.62, planned_rr=2.0, touch=2026-03-17T14:20:00Z, outcome=sl_first",
      "entry": 5012.62,
      "stop": 5018.345,
      "target": 5001.17,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T14:20:00Z",
      "outcome_time": "2026-03-17T14:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5006.895,
          "impulse_high": 5018.345,
          "fib_entry_level": "50%",
          "entry": 5012.620000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5006.33,
              "high": 5017.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5013.994, planned_rr=3.0, touch=2026-03-17T14:20:00Z, outcome=sl_first",
      "entry": 5013.994,
      "stop": 5018.345,
      "target": 5000.941,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T14:20:00Z",
      "outcome_time": "2026-03-17T14:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5006.895,
          "impulse_high": 5018.345,
          "fib_entry_level": "62%",
          "entry": 5013.994000000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5006.33,
              "high": 5017.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5004.44, planned_rr=2.0, touch=2026-03-17T15:25:00Z, outcome=tp_first",
      "entry": 5004.44,
      "stop": 5014.975,
      "target": 4983.37,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-17T15:25:00Z",
      "outcome_time": "2026-03-17T15:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4993.905,
          "impulse_high": 5014.975,
          "fib_entry_level": "50%",
          "entry": 5004.4400000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5000.67,
              "high": 5006.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5006.968, planned_rr=3.0, touch=2026-03-17T15:20:00Z, outcome=tp_first",
      "entry": 5006.968,
      "stop": 5014.975,
      "target": 4982.949,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-17T15:20:00Z",
      "outcome_time": "2026-03-17T15:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4993.905,
          "impulse_high": 5014.975,
          "fib_entry_level": "62%",
          "entry": 5006.9684,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 5006.33,
              "high": 5017.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4990.429, planned_rr=3.0, touch=2026-03-17T15:35:00Z, outcome=sl_first",
      "entry": 4990.429,
      "stop": 5000.67,
      "target": 4959.706,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T15:35:00Z",
      "outcome_time": "2026-03-17T16:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4973.72,
          "impulse_high": 5000.67,
          "fib_entry_level": "62%",
          "entry": 4990.429,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-17T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-17T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4999.624, planned_rr=3.0, touch=2026-03-17T22:35:00Z, outcome=sl_first",
      "entry": 4999.624,
      "stop": 5002.035,
      "target": 4992.391,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-17T22:35:00Z",
      "outcome_time": "2026-03-17T22:50:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-17T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-17",
        "timestamp": "2026-03-17T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4995.69,
          "impulse_high": 5002.035,
          "fib_entry_level": "62%",
          "entry": 4999.6239,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5044.9,
            "PDL": 4973.72,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5007.335, planned_rr=2.0, touch=2026-03-18T00:20:00Z, outcome=sl_first",
      "entry": 5007.335,
      "stop": 5011.965,
      "target": 4998.075,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T00:20:00Z",
      "outcome_time": "2026-03-18T01:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5002.705,
          "impulse_high": 5011.965,
          "fib_entry_level": "50%",
          "entry": 5007.335,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5001.95,
              "high": 5007.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5008.446, planned_rr=3.0, touch=2026-03-18T01:00:00Z, outcome=sl_first",
      "entry": 5008.446,
      "stop": 5011.965,
      "target": 4997.89,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T01:00:00Z",
      "outcome_time": "2026-03-18T01:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5002.705,
          "impulse_high": 5011.965,
          "fib_entry_level": "62%",
          "entry": 5008.4462,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T01-00-00Z_short_breaker_continuation",
      "timestamp": "2026-03-18T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=5004.89, planned_rr=2.0, touch=2026-03-18T01:35:00Z, outcome=tp_first",
      "entry": 5004.89,
      "stop": 5015.825,
      "target": 4983.02,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T01:35:00Z",
      "outcome_time": "2026-03-18T04:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T01-00-00Z_short_breaker_continuation",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 5015.825,
          "entry": 5004.889999999999,
          "stop": 5015.825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5001.95,
              "high": 5007.83,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4996.405,
              "high": 4999.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5005.688, planned_rr=2.0, touch=2026-03-18T01:35:00Z, outcome=tp_first",
      "entry": 5005.688,
      "stop": 5009.62,
      "target": 4997.823,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T01:35:00Z",
      "outcome_time": "2026-03-18T01:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 5001.755,
          "impulse_high": 5009.62,
          "fib_entry_level": "50%",
          "entry": 5005.6875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5001.95,
              "high": 5007.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=5006.631, planned_rr=3.0, touch=2026-03-18T02:20:00Z, outcome=tp_first",
      "entry": 5006.631,
      "stop": 5009.62,
      "target": 4997.665,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T02:20:00Z",
      "outcome_time": "2026-03-18T02:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 5001.755,
          "impulse_high": 5009.62,
          "fib_entry_level": "62%",
          "entry": 5006.6313,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 5001.95,
              "high": 5007.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4997.48, planned_rr=2.0, touch=2026-03-18T02:50:00Z, outcome=tp_first",
      "entry": 4997.48,
      "stop": 5004.345,
      "target": 4983.75,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T02:50:00Z",
      "outcome_time": "2026-03-18T04:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4990.615,
          "impulse_high": 5004.345,
          "fib_entry_level": "50%",
          "entry": 4997.48,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4996.405,
              "high": 4999.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4999.128, planned_rr=3.0, touch=2026-03-18T02:50:00Z, outcome=tp_first",
      "entry": 4999.128,
      "stop": 5004.345,
      "target": 4983.475,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T02:50:00Z",
      "outcome_time": "2026-03-18T04:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4990.615,
          "impulse_high": 5004.345,
          "fib_entry_level": "62%",
          "entry": 4999.1276,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4996.405,
              "high": 4999.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4987.627, planned_rr=3.0, touch=2026-03-18T04:35:00Z, outcome=sl_first",
      "entry": 4987.627,
      "stop": 4991.18,
      "target": 4976.968,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T04:35:00Z",
      "outcome_time": "2026-03-18T05:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4981.83,
          "impulse_high": 4991.18,
          "fib_entry_level": "62%",
          "entry": 4987.627,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4987.32,
              "high": 4990.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4987.278, planned_rr=3.0, touch=2026-03-18T10:25:00Z, outcome=tp_first",
      "entry": 4987.278,
      "stop": 4991.135,
      "target": 4975.707,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T10:25:00Z",
      "outcome_time": "2026-03-18T10:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4980.985,
          "impulse_high": 4991.135,
          "fib_entry_level": "62%",
          "entry": 4987.278,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4969.568, planned_rr=2.0, touch=2026-03-18T10:55:00Z, outcome=tp_first",
      "entry": 4969.568,
      "stop": 4980.305,
      "target": 4948.092,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T10:55:00Z",
      "outcome_time": "2026-03-18T11:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4958.83,
          "impulse_high": 4980.305,
          "fib_entry_level": "50%",
          "entry": 4969.5675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4950.48,
              "high": 4970.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4972.145, planned_rr=3.0, touch=2026-03-18T10:50:00Z, outcome=tp_first",
      "entry": 4972.145,
      "stop": 4980.305,
      "target": 4947.663,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T10:50:00Z",
      "outcome_time": "2026-03-18T11:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4958.83,
          "impulse_high": 4980.305,
          "fib_entry_level": "62%",
          "entry": 4972.1445,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4960.305, planned_rr=2.0, touch=2026-03-18T11:25:00Z, outcome=tp_first",
      "entry": 4960.305,
      "stop": 4974.135,
      "target": 4932.645,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T11:25:00Z",
      "outcome_time": "2026-03-18T11:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4946.475,
          "impulse_high": 4974.135,
          "fib_entry_level": "50%",
          "entry": 4960.305,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4950.48,
              "high": 4970.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4888.375, planned_rr=2.0, touch=2026-03-18T12:35:00Z, outcome=tp_first",
      "entry": 4888.375,
      "stop": 4902.66,
      "target": 4859.805,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T12:35:00Z",
      "outcome_time": "2026-03-18T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4874.09,
          "impulse_high": 4902.66,
          "fib_entry_level": "50%",
          "entry": 4888.375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4870.87,
              "high": 4891.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4891.803, planned_rr=3.0, touch=2026-03-18T14:05:00Z, outcome=tp_first",
      "entry": 4891.803,
      "stop": 4902.66,
      "target": 4859.234,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T14:05:00Z",
      "outcome_time": "2026-03-18T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4874.09,
          "impulse_high": 4902.66,
          "fib_entry_level": "62%",
          "entry": 4891.8034,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4891.705,
              "high": 4895.175,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4865.712, planned_rr=2.0, touch=2026-03-18T13:05:00Z, outcome=sl_first",
      "entry": 4865.712,
      "stop": 4881.78,
      "target": 4833.577,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T13:05:00Z",
      "outcome_time": "2026-03-18T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4849.645,
          "impulse_high": 4881.78,
          "fib_entry_level": "50%",
          "entry": 4865.7125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4865.29,
              "high": 4872.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4869.569, planned_rr=3.0, touch=2026-03-18T13:35:00Z, outcome=sl_first",
      "entry": 4869.569,
      "stop": 4881.78,
      "target": 4832.935,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T13:35:00Z",
      "outcome_time": "2026-03-18T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4849.645,
          "impulse_high": 4881.78,
          "fib_entry_level": "62%",
          "entry": 4869.5687,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4866.035,
              "high": 4870.87,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4865.29,
              "high": 4872.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4871.46, planned_rr=2.0, touch=2026-03-18T14:20:00Z, outcome=sl_first",
      "entry": 4871.46,
      "stop": 4883.66,
      "target": 4847.06,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T14:20:00Z",
      "outcome_time": "2026-03-18T16:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4859.26,
          "impulse_high": 4883.66,
          "fib_entry_level": "50%",
          "entry": 4871.46,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4870.87,
              "high": 4891.705,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4865.29,
              "high": 4872.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4874.388, planned_rr=3.0, touch=2026-03-18T15:00:00Z, outcome=sl_first",
      "entry": 4874.388,
      "stop": 4883.66,
      "target": 4846.572,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T15:00:00Z",
      "outcome_time": "2026-03-18T16:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4859.26,
          "impulse_high": 4883.66,
          "fib_entry_level": "62%",
          "entry": 4874.388,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4870.87,
              "high": 4891.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4836.467, planned_rr=2.0, touch=2026-03-18T20:10:00Z, outcome=tp_first",
      "entry": 4836.467,
      "stop": 4848.94,
      "target": 4811.523,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-18T20:10:00Z",
      "outcome_time": "2026-03-18T20:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4823.995,
          "impulse_high": 4848.94,
          "fib_entry_level": "50%",
          "entry": 4836.4675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4828.58,
              "high": 4838.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4839.461, planned_rr=3.0, touch=2026-03-18T20:05:00Z, outcome=tp_first",
      "entry": 4839.461,
      "stop": 4848.94,
      "target": 4811.024,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-18T20:05:00Z",
      "outcome_time": "2026-03-18T20:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4823.995,
          "impulse_high": 4848.94,
          "fib_entry_level": "62%",
          "entry": 4839.4609,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-18T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-18T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4821.134, planned_rr=3.0, touch=2026-03-18T20:20:00Z, outcome=sl_first",
      "entry": 4821.134,
      "stop": 4828.58,
      "target": 4798.796,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-18T20:20:00Z",
      "outcome_time": "2026-03-18T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-18T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-18",
        "timestamp": "2026-03-18T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4808.985,
          "impulse_high": 4828.58,
          "fib_entry_level": "62%",
          "entry": 4821.1339,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 5016.53,
            "PDL": 4806.845,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4859.551, planned_rr=3.0, touch=2026-03-19T02:35:00Z, outcome=sl_first",
      "entry": 4859.551,
      "stop": 4865.87,
      "target": 4840.592,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-19T02:35:00Z",
      "outcome_time": "2026-03-19T03:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4849.24,
          "impulse_high": 4865.87,
          "fib_entry_level": "62%",
          "entry": 4859.5506,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4839.555, planned_rr=2.0, touch=2026-03-19T05:35:00Z, outcome=tp_first",
      "entry": 4839.555,
      "stop": 4846.635,
      "target": 4825.395,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-19T05:35:00Z",
      "outcome_time": "2026-03-19T06:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4832.475,
          "impulse_high": 4846.635,
          "fib_entry_level": "50%",
          "entry": 4839.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4827.045,
              "high": 4842.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4841.254, planned_rr=3.0, touch=2026-03-19T05:35:00Z, outcome=tp_first",
      "entry": 4841.254,
      "stop": 4846.635,
      "target": 4825.112,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-19T05:35:00Z",
      "outcome_time": "2026-03-19T06:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4832.475,
          "impulse_high": 4846.635,
          "fib_entry_level": "62%",
          "entry": 4841.2542,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4840.4,
              "high": 4846.4,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4827.045,
              "high": 4842.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4772.939, planned_rr=3.0, touch=2026-03-19T07:00:00Z, outcome=tp_first",
      "entry": 4772.939,
      "stop": 4788.395,
      "target": 4726.569,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-19T07:00:00Z",
      "outcome_time": "2026-03-19T08:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4747.72,
          "impulse_high": 4788.395,
          "fib_entry_level": "62%",
          "entry": 4772.9385,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4704.667, planned_rr=2.0, touch=2026-03-19T08:35:00Z, outcome=sl_first",
      "entry": 4704.667,
      "stop": 4722.45,
      "target": 4669.102,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-19T08:35:00Z",
      "outcome_time": "2026-03-19T09:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4686.885,
          "impulse_high": 4722.45,
          "fib_entry_level": "50%",
          "entry": 4704.6675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4698.055,
              "high": 4719.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4708.935, planned_rr=3.0, touch=2026-03-19T08:35:00Z, outcome=sl_first",
      "entry": 4708.935,
      "stop": 4722.45,
      "target": 4668.391,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-19T08:35:00Z",
      "outcome_time": "2026-03-19T09:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4686.885,
          "impulse_high": 4722.45,
          "fib_entry_level": "62%",
          "entry": 4708.9353,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4698.055,
              "high": 4719.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4632.273, planned_rr=2.0, touch=2026-03-19T12:05:00Z, outcome=tp_first",
      "entry": 4632.273,
      "stop": 4654.25,
      "target": 4588.318,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-19T12:05:00Z",
      "outcome_time": "2026-03-19T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4610.295,
          "impulse_high": 4654.25,
          "fib_entry_level": "50%",
          "entry": 4632.2725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4631.055,
              "high": 4651.16,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4637.547, planned_rr=3.0, touch=2026-03-19T12:05:00Z, outcome=tp_first",
      "entry": 4637.547,
      "stop": 4654.25,
      "target": 4587.438,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-19T12:05:00Z",
      "outcome_time": "2026-03-19T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4610.295,
          "impulse_high": 4654.25,
          "fib_entry_level": "62%",
          "entry": 4637.5471,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4631.055,
              "high": 4651.16,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4588.995, planned_rr=2.0, touch=2026-03-19T12:40:00Z, outcome=tp_first",
      "entry": 4588.995,
      "stop": 4617.95,
      "target": 4531.085,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-19T12:40:00Z",
      "outcome_time": "2026-03-19T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4560.04,
          "impulse_high": 4617.95,
          "fib_entry_level": "50%",
          "entry": 4588.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4586.0,
              "high": 4602.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4595.944, planned_rr=3.0, touch=2026-03-19T12:40:00Z, outcome=tp_first",
      "entry": 4595.944,
      "stop": 4617.95,
      "target": 4529.927,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-19T12:40:00Z",
      "outcome_time": "2026-03-19T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4560.04,
          "impulse_high": 4617.95,
          "fib_entry_level": "62%",
          "entry": 4595.9442,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4586.0,
              "high": 4602.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4547.244, planned_rr=3.0, touch=2026-03-19T13:05:00Z, outcome=sl_first",
      "entry": 4547.244,
      "stop": 4574.75,
      "target": 4464.725,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-19T13:05:00Z",
      "outcome_time": "2026-03-19T13:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4502.365,
          "impulse_high": 4574.75,
          "fib_entry_level": "62%",
          "entry": 4547.2437,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4616.261, planned_rr=3.0, touch=2026-03-19T14:25:00Z, outcome=sl_first",
      "entry": 4616.261,
      "stop": 4635.865,
      "target": 4557.448,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-19T14:25:00Z",
      "outcome_time": "2026-03-19T15:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4584.275,
          "impulse_high": 4635.865,
          "fib_entry_level": "62%",
          "entry": 4616.2608,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4656.343, planned_rr=2.0, touch=2026-03-19T22:35:00Z, outcome=tp_first",
      "entry": 4656.343,
      "stop": 4666.465,
      "target": 4636.098,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-19T22:35:00Z",
      "outcome_time": "2026-03-19T23:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4646.22,
          "impulse_high": 4666.465,
          "fib_entry_level": "50%",
          "entry": 4656.342500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4650.17,
              "high": 4660.595,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-19T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-19T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4658.772, planned_rr=3.0, touch=2026-03-20T00:10:00Z, outcome=sl_first",
      "entry": 4658.772,
      "stop": 4666.465,
      "target": 4635.693,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T00:10:00Z",
      "outcome_time": "2026-03-20T01:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-19T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-19",
        "timestamp": "2026-03-19T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4646.22,
          "impulse_high": 4666.465,
          "fib_entry_level": "62%",
          "entry": 4658.7719,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4650.17,
              "high": 4660.595,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4867.225,
            "PDL": 4502.365,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T00-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-20T00:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4655.382, planned_rr=2.0, touch=2026-03-20T00:20:00Z, outcome=sl_first",
      "entry": 4655.382,
      "stop": 4665.1,
      "target": 4635.947,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T00:20:00Z",
      "outcome_time": "2026-03-20T01:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T00-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4665.1,
          "entry": 4655.3825,
          "stop": 4665.1,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4650.17,
              "high": 4660.595,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4638.385,
              "high": 4647.335,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4701.202, planned_rr=3.0, touch=2026-03-20T05:50:00Z, outcome=tp_first",
      "entry": 4701.202,
      "stop": 4710.765,
      "target": 4672.514,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-20T05:50:00Z",
      "outcome_time": "2026-03-20T06:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4685.6,
          "impulse_high": 4710.765,
          "fib_entry_level": "62%",
          "entry": 4701.2023,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4701.16,
              "high": 4702.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4679.025, planned_rr=3.0, touch=2026-03-20T06:35:00Z, outcome=sl_first",
      "entry": 4679.025,
      "stop": 4689.885,
      "target": 4646.443,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T06:35:00Z",
      "outcome_time": "2026-03-20T07:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4661.305,
          "impulse_high": 4689.885,
          "fib_entry_level": "62%",
          "entry": 4679.024600000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4676.015,
              "high": 4680.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4699.359, planned_rr=3.0, touch=2026-03-20T08:50:00Z, outcome=tp_first",
      "entry": 4699.359,
      "stop": 4708.28,
      "target": 4672.598,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-20T08:50:00Z",
      "outcome_time": "2026-03-20T09:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4684.805,
          "impulse_high": 4708.28,
          "fib_entry_level": "62%",
          "entry": 4699.3595,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4681.898, planned_rr=2.0, touch=2026-03-20T09:35:00Z, outcome=tp_first",
      "entry": 4681.898,
      "stop": 4692.58,
      "target": 4660.533,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-20T09:35:00Z",
      "outcome_time": "2026-03-20T09:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4671.215,
          "impulse_high": 4692.58,
          "fib_entry_level": "50%",
          "entry": 4681.8975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4677.525,
              "high": 4684.29,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4684.461, planned_rr=3.0, touch=2026-03-20T12:05:00Z, outcome=sl_first",
      "entry": 4684.461,
      "stop": 4692.58,
      "target": 4660.105,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T12:05:00Z",
      "outcome_time": "2026-03-20T12:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4671.215,
          "impulse_high": 4692.58,
          "fib_entry_level": "62%",
          "entry": 4684.4613,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4652.021, planned_rr=3.0, touch=2026-03-20T10:50:00Z, outcome=sl_first",
      "entry": 4652.021,
      "stop": 4660.495,
      "target": 4626.599,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T10:50:00Z",
      "outcome_time": "2026-03-20T11:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4638.195,
          "impulse_high": 4660.495,
          "fib_entry_level": "62%",
          "entry": 4652.021,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4649.57,
              "high": 4670.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4666.79, planned_rr=2.0, touch=2026-03-20T13:05:00Z, outcome=tp_first",
      "entry": 4666.79,
      "stop": 4679.615,
      "target": 4641.14,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-20T13:05:00Z",
      "outcome_time": "2026-03-20T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4653.965,
          "impulse_high": 4679.615,
          "fib_entry_level": "50%",
          "entry": 4666.79,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4649.57,
              "high": 4670.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4669.868, planned_rr=3.0, touch=2026-03-20T13:05:00Z, outcome=tp_first",
      "entry": 4669.868,
      "stop": 4679.615,
      "target": 4640.627,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-20T13:05:00Z",
      "outcome_time": "2026-03-20T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4653.965,
          "impulse_high": 4679.615,
          "fib_entry_level": "62%",
          "entry": 4669.8679999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4649.57,
              "high": 4670.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4604.497, planned_rr=2.0, touch=2026-03-20T14:05:00Z, outcome=sl_first",
      "entry": 4604.497,
      "stop": 4622.74,
      "target": 4568.012,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T14:05:00Z",
      "outcome_time": "2026-03-20T14:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4586.255,
          "impulse_high": 4622.74,
          "fib_entry_level": "50%",
          "entry": 4604.4974999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4588.655,
              "high": 4613.025,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4608.876, planned_rr=3.0, touch=2026-03-20T14:05:00Z, outcome=sl_first",
      "entry": 4608.876,
      "stop": 4622.74,
      "target": 4567.283,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T14:05:00Z",
      "outcome_time": "2026-03-20T14:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4586.255,
          "impulse_high": 4622.74,
          "fib_entry_level": "62%",
          "entry": 4608.8757,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4588.655,
              "high": 4613.025,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4574.487, planned_rr=3.0, touch=2026-03-20T14:20:00Z, outcome=sl_first",
      "entry": 4574.487,
      "stop": 4588.655,
      "target": 4531.982,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T14:20:00Z",
      "outcome_time": "2026-03-20T16:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4551.37,
          "impulse_high": 4588.655,
          "fib_entry_level": "62%",
          "entry": 4574.4866999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-20T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-20T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4509.715, planned_rr=3.0, touch=2026-03-20T18:50:00Z, outcome=sl_first",
      "entry": 4509.715,
      "stop": 4529.435,
      "target": 4450.555,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-20T18:50:00Z",
      "outcome_time": "2026-03-22T22:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-20T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-20",
        "timestamp": "2026-03-20T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4477.54,
          "impulse_high": 4529.435,
          "fib_entry_level": "62%",
          "entry": 4509.7149,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-22T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4472.925, planned_rr=2.0, touch=2026-03-23T00:00:00Z, outcome=tp_first",
      "entry": 4472.925,
      "stop": 4493.77,
      "target": 4431.235,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-23T00:00:00Z",
      "outcome_time": "2026-03-23T00:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-22",
        "timestamp": "2026-03-22T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4452.08,
          "impulse_high": 4493.77,
          "fib_entry_level": "50%",
          "entry": 4472.925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4472.42,
              "high": 4491.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4736.175,
            "PDL": 4477.54,
            "PWH": 5044.9,
            "PWL": 4477.54
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4449.288, planned_rr=2.0, touch=2026-03-23T00:05:00Z, outcome=tp_first",
      "entry": 4449.288,
      "stop": 4473.16,
      "target": 4401.543,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-23T00:05:00Z",
      "outcome_time": "2026-03-23T00:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4425.415,
          "impulse_high": 4473.16,
          "fib_entry_level": "50%",
          "entry": 4449.2875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4445.475,
              "high": 4452.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4383.365, planned_rr=2.0, touch=2026-03-23T00:35:00Z, outcome=sl_first",
      "entry": 4383.365,
      "stop": 4437.09,
      "target": 4275.915,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T00:35:00Z",
      "outcome_time": "2026-03-23T01:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4329.64,
          "impulse_high": 4437.09,
          "fib_entry_level": "50%",
          "entry": 4383.365,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4371.645,
              "high": 4404.835,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4396.259, planned_rr=3.0, touch=2026-03-23T00:35:00Z, outcome=sl_first",
      "entry": 4396.259,
      "stop": 4437.09,
      "target": 4273.766,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T00:35:00Z",
      "outcome_time": "2026-03-23T01:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4329.64,
          "impulse_high": 4437.09,
          "fib_entry_level": "62%",
          "entry": 4396.259,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4371.645,
              "high": 4404.835,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4415.689, planned_rr=3.0, touch=2026-03-23T02:00:00Z, outcome=tp_first",
      "entry": 4415.689,
      "stop": 4436.95,
      "target": 4351.906,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-23T02:00:00Z",
      "outcome_time": "2026-03-23T03:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4381.0,
          "impulse_high": 4436.95,
          "fib_entry_level": "62%",
          "entry": 4415.689,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4216.075, planned_rr=2.0, touch=2026-03-23T06:35:00Z, outcome=tp_first",
      "entry": 4216.075,
      "stop": 4249.715,
      "target": 4148.795,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-23T06:35:00Z",
      "outcome_time": "2026-03-23T07:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4182.435,
          "impulse_high": 4249.715,
          "fib_entry_level": "50%",
          "entry": 4216.075000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4163.07,
              "high": 4230.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4224.149, planned_rr=3.0, touch=2026-03-23T06:35:00Z, outcome=tp_first",
      "entry": 4224.149,
      "stop": 4249.715,
      "target": 4147.449,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-23T06:35:00Z",
      "outcome_time": "2026-03-23T07:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4182.435,
          "impulse_high": 4249.715,
          "fib_entry_level": "62%",
          "entry": 4224.1486,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4163.07,
              "high": 4230.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4174.575, planned_rr=2.0, touch=2026-03-23T07:05:00Z, outcome=sl_first",
      "entry": 4174.575,
      "stop": 4222.52,
      "target": 4078.685,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T07:05:00Z",
      "outcome_time": "2026-03-23T07:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4126.63,
          "impulse_high": 4222.52,
          "fib_entry_level": "50%",
          "entry": 4174.575000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4163.07,
              "high": 4230.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4186.082, planned_rr=3.0, touch=2026-03-23T07:35:00Z, outcome=sl_first",
      "entry": 4186.082,
      "stop": 4222.52,
      "target": 4076.767,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T07:35:00Z",
      "outcome_time": "2026-03-23T07:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4126.63,
          "impulse_high": 4222.52,
          "fib_entry_level": "62%",
          "entry": 4186.0818,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4163.07,
              "high": 4230.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4266.82, planned_rr=2.0, touch=2026-03-23T09:35:00Z, outcome=sl_first",
      "entry": 4266.82,
      "stop": 4308.625,
      "target": 4183.21,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T09:35:00Z",
      "outcome_time": "2026-03-23T11:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4225.015,
          "impulse_high": 4308.625,
          "fib_entry_level": "50%",
          "entry": 4266.82,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4257.32,
              "high": 4267.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4276.853, planned_rr=3.0, touch=2026-03-23T09:35:00Z, outcome=sl_first",
      "entry": 4276.853,
      "stop": 4308.625,
      "target": 4181.538,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T09:35:00Z",
      "outcome_time": "2026-03-23T11:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4225.015,
          "impulse_high": 4308.625,
          "fib_entry_level": "62%",
          "entry": 4276.8532000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T09-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-23T09:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4234.485, planned_rr=2.0, touch=2026-03-23T09:40:00Z, outcome=sl_first",
      "entry": 4234.485,
      "stop": 4308.625,
      "target": 4086.205,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T09:40:00Z",
      "outcome_time": "2026-03-23T11:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T09-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4308.625,
          "entry": 4234.485,
          "stop": 4308.625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4230.11,
              "high": 4238.86,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4160.22,
              "high": 4163.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T09-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-23T09:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4225.015, planned_rr=2.0, touch=2026-03-23T09:40:00Z, outcome=sl_first",
      "entry": 4225.015,
      "stop": 4308.625,
      "target": 4057.795,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-23T09:40:00Z",
      "outcome_time": "2026-03-23T11:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T09-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4308.625,
          "entry": 4225.015,
          "stop": 4308.625,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-23T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-23T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4426.865, planned_rr=2.0, touch=2026-03-23T19:10:00Z, outcome=tp_first",
      "entry": 4426.865,
      "stop": 4450.615,
      "target": 4379.365,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-23T19:10:00Z",
      "outcome_time": "2026-03-23T22:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-23T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-23",
        "timestamp": "2026-03-23T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4403.115,
          "impulse_high": 4450.615,
          "fib_entry_level": "50%",
          "entry": 4426.865,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4415.26,
              "high": 4446.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4536.415,
            "PDL": 4099.125,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4359.43, planned_rr=2.0, touch=2026-03-24T00:35:00Z, outcome=sl_first",
      "entry": 4359.43,
      "stop": 4387.5,
      "target": 4303.29,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T00:35:00Z",
      "outcome_time": "2026-03-24T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4331.36,
          "impulse_high": 4387.5,
          "fib_entry_level": "50%",
          "entry": 4359.43,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4366.167, planned_rr=3.0, touch=2026-03-24T00:35:00Z, outcome=sl_first",
      "entry": 4366.167,
      "stop": 4387.5,
      "target": 4302.167,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T00:35:00Z",
      "outcome_time": "2026-03-24T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4331.36,
          "impulse_high": 4387.5,
          "fib_entry_level": "62%",
          "entry": 4366.1668,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4351.523, planned_rr=2.0, touch=2026-03-24T01:05:00Z, outcome=sl_first",
      "entry": 4351.523,
      "stop": 4374.555,
      "target": 4305.457,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T01:05:00Z",
      "outcome_time": "2026-03-24T02:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4328.49,
          "impulse_high": 4374.555,
          "fib_entry_level": "50%",
          "entry": 4351.5225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4357.05, planned_rr=3.0, touch=2026-03-24T01:05:00Z, outcome=sl_first",
      "entry": 4357.05,
      "stop": 4374.555,
      "target": 4304.536,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T01:05:00Z",
      "outcome_time": "2026-03-24T02:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4328.49,
          "impulse_high": 4374.555,
          "fib_entry_level": "62%",
          "entry": 4357.0503,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4345.253, planned_rr=2.0, touch=2026-03-24T01:40:00Z, outcome=sl_first",
      "entry": 4345.253,
      "stop": 4368.645,
      "target": 4298.468,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T01:40:00Z",
      "outcome_time": "2026-03-24T02:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4321.86,
          "impulse_high": 4368.645,
          "fib_entry_level": "50%",
          "entry": 4345.2525000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4350.867, planned_rr=3.0, touch=2026-03-24T01:35:00Z, outcome=sl_first",
      "entry": 4350.867,
      "stop": 4368.645,
      "target": 4297.532,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T01:35:00Z",
      "outcome_time": "2026-03-24T01:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4321.86,
          "impulse_high": 4368.645,
          "fib_entry_level": "62%",
          "entry": 4350.8667000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4343.37,
              "high": 4387.035,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.225,
              "high": 4369.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T06-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-24T06:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4366.77, planned_rr=2.0, touch=2026-03-24T06:05:00Z, outcome=sl_first",
      "entry": 4366.77,
      "stop": 4375.8,
      "target": 4348.71,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T06:05:00Z",
      "outcome_time": "2026-03-24T06:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T06-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4375.8,
          "entry": 4366.77,
          "stop": 4375.8,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4407.768, planned_rr=3.0, touch=2026-03-24T08:45:00Z, outcome=sl_first",
      "entry": 4407.768,
      "stop": 4417.87,
      "target": 4377.461,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T08:45:00Z",
      "outcome_time": "2026-03-24T09:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4391.285,
          "impulse_high": 4417.87,
          "fib_entry_level": "62%",
          "entry": 4407.7677,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4416.593, planned_rr=3.0, touch=2026-03-24T11:05:00Z, outcome=sl_first",
      "entry": 4416.593,
      "stop": 4442.245,
      "target": 4339.637,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T11:05:00Z",
      "outcome_time": "2026-03-24T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4374.74,
          "impulse_high": 4442.245,
          "fib_entry_level": "62%",
          "entry": 4416.5931,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T11-00-00Z_short_breaker_continuation",
      "timestamp": "2026-03-24T11:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4393.262, planned_rr=2.0, touch=2026-03-24T11:50:00Z, outcome=sl_first",
      "entry": 4393.262,
      "stop": 4442.245,
      "target": 4295.297,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T11:50:00Z",
      "outcome_time": "2026-03-24T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T11-00-00Z_short_breaker_continuation",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4442.245,
          "entry": 4393.2625,
          "stop": 4442.245,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4390.695,
              "high": 4395.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T11-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-24T11:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4393.262, planned_rr=2.0, touch=2026-03-24T11:50:00Z, outcome=sl_first",
      "entry": 4393.262,
      "stop": 4442.245,
      "target": 4295.297,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T11:50:00Z",
      "outcome_time": "2026-03-24T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T11-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4442.245,
          "entry": 4393.2625,
          "stop": 4442.245,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4390.695,
              "high": 4395.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T11-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-03-24T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4419.83, planned_rr=2.0, touch=2026-03-24T11:10:00Z, outcome=tp_first",
      "entry": 4419.83,
      "stop": 4442.245,
      "target": 4375.0,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-24T11:10:00Z",
      "outcome_time": "2026-03-24T12:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T11-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4442.245,
          "entry": 4419.83,
          "stop": 4442.245,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4415.555, planned_rr=3.0, touch=2026-03-24T12:20:00Z, outcome=tp_first",
      "entry": 4415.555,
      "stop": 4427.645,
      "target": 4379.286,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-24T12:20:00Z",
      "outcome_time": "2026-03-24T12:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4395.83,
          "impulse_high": 4427.645,
          "fib_entry_level": "62%",
          "entry": 4415.5553,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4389.835, planned_rr=3.0, touch=2026-03-24T12:50:00Z, outcome=sl_first",
      "entry": 4389.835,
      "stop": 4406.855,
      "target": 4338.774,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T12:50:00Z",
      "outcome_time": "2026-03-24T14:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4362.065,
          "impulse_high": 4406.855,
          "fib_entry_level": "62%",
          "entry": 4389.8348,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4373.928, planned_rr=3.0, touch=2026-03-24T13:20:00Z, outcome=sl_first",
      "entry": 4373.928,
      "stop": 4384.49,
      "target": 4342.242,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T13:20:00Z",
      "outcome_time": "2026-03-24T14:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4356.695,
          "impulse_high": 4384.49,
          "fib_entry_level": "62%",
          "entry": 4373.9279,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4407.532, planned_rr=2.0, touch=2026-03-24T17:05:00Z, outcome=sl_first",
      "entry": 4407.532,
      "stop": 4426.69,
      "target": 4369.217,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T17:05:00Z",
      "outcome_time": "2026-03-24T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4388.375,
          "impulse_high": 4426.69,
          "fib_entry_level": "50%",
          "entry": 4407.532499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4406.015,
              "high": 4418.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4412.13, planned_rr=3.0, touch=2026-03-24T18:30:00Z, outcome=sl_first",
      "entry": 4412.13,
      "stop": 4426.69,
      "target": 4368.451,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T18:30:00Z",
      "outcome_time": "2026-03-24T20:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4388.375,
          "impulse_high": 4426.69,
          "fib_entry_level": "62%",
          "entry": 4412.1303,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4406.015,
              "high": 4418.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-24T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-24T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4390.602, planned_rr=3.0, touch=2026-03-24T17:55:00Z, outcome=sl_first",
      "entry": 4390.602,
      "stop": 4400.045,
      "target": 4362.273,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-24T17:55:00Z",
      "outcome_time": "2026-03-24T18:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-24T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-24",
        "timestamp": "2026-03-24T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4375.195,
          "impulse_high": 4400.045,
          "fib_entry_level": "62%",
          "entry": 4390.602,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4484.495,
            "PDL": 4305.88,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4565.016, planned_rr=3.0, touch=2026-03-25T05:20:00Z, outcome=tp_first",
      "entry": 4565.016,
      "stop": 4571.81,
      "target": 4544.632,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-25T05:20:00Z",
      "outcome_time": "2026-03-25T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4553.93,
          "impulse_high": 4571.81,
          "fib_entry_level": "62%",
          "entry": 4565.015600000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4562.066, planned_rr=3.0, touch=2026-03-25T05:50:00Z, outcome=tp_first",
      "entry": 4562.066,
      "stop": 4567.295,
      "target": 4546.38,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-25T05:50:00Z",
      "outcome_time": "2026-03-25T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4553.535,
          "impulse_high": 4567.295,
          "fib_entry_level": "62%",
          "entry": 4562.0662,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4547.997, planned_rr=3.0, touch=2026-03-25T06:05:00Z, outcome=sl_first",
      "entry": 4547.997,
      "stop": 4557.1,
      "target": 4520.688,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T06:05:00Z",
      "outcome_time": "2026-03-25T07:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4533.145,
          "impulse_high": 4557.1,
          "fib_entry_level": "62%",
          "entry": 4547.9971000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4551.91, planned_rr=2.0, touch=2026-03-25T07:35:00Z, outcome=sl_first",
      "entry": 4551.91,
      "stop": 4561.14,
      "target": 4533.45,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T07:35:00Z",
      "outcome_time": "2026-03-25T08:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4542.68,
          "impulse_high": 4561.14,
          "fib_entry_level": "50%",
          "entry": 4551.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4550.39,
              "high": 4556.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4554.125, planned_rr=3.0, touch=2026-03-25T07:35:00Z, outcome=sl_first",
      "entry": 4554.125,
      "stop": 4561.14,
      "target": 4533.081,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T07:35:00Z",
      "outcome_time": "2026-03-25T08:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4542.68,
          "impulse_high": 4561.14,
          "fib_entry_level": "62%",
          "entry": 4554.1252,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4550.39,
              "high": 4556.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4559.685, planned_rr=2.0, touch=2026-03-25T12:20:00Z, outcome=sl_first",
      "entry": 4559.685,
      "stop": 4579.23,
      "target": 4520.595,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T12:20:00Z",
      "outcome_time": "2026-03-25T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4540.14,
          "impulse_high": 4579.23,
          "fib_entry_level": "50%",
          "entry": 4559.6849999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4554.87,
              "high": 4573.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4564.376, planned_rr=3.0, touch=2026-03-25T12:20:00Z, outcome=sl_first",
      "entry": 4564.376,
      "stop": 4579.23,
      "target": 4519.813,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T12:20:00Z",
      "outcome_time": "2026-03-25T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4540.14,
          "impulse_high": 4579.23,
          "fib_entry_level": "62%",
          "entry": 4564.3758,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4554.87,
              "high": 4573.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4555.25, planned_rr=3.0, touch=2026-03-25T14:10:00Z, outcome=sl_first",
      "entry": 4555.25,
      "stop": 4564.03,
      "target": 4528.91,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T14:10:00Z",
      "outcome_time": "2026-03-25T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4540.925,
          "impulse_high": 4564.03,
          "fib_entry_level": "62%",
          "entry": 4555.2501,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4554.87,
              "high": 4573.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4559.585, planned_rr=2.0, touch=2026-03-25T15:05:00Z, outcome=tp_first",
      "entry": 4559.585,
      "stop": 4569.375,
      "target": 4540.005,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-25T15:05:00Z",
      "outcome_time": "2026-03-25T15:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4549.795,
          "impulse_high": 4569.375,
          "fib_entry_level": "50%",
          "entry": 4559.585,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4554.87,
              "high": 4573.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4561.935, planned_rr=3.0, touch=2026-03-25T15:05:00Z, outcome=tp_first",
      "entry": 4561.935,
      "stop": 4569.375,
      "target": 4539.613,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-25T15:05:00Z",
      "outcome_time": "2026-03-25T15:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4549.795,
          "impulse_high": 4569.375,
          "fib_entry_level": "62%",
          "entry": 4561.9346,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4554.87,
              "high": 4573.045,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4561.67,
              "high": 4564.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4540.285, planned_rr=2.0, touch=2026-03-25T18:50:00Z, outcome=tp_first",
      "entry": 4540.285,
      "stop": 4549.615,
      "target": 4521.625,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-25T18:50:00Z",
      "outcome_time": "2026-03-25T19:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4530.955,
          "impulse_high": 4549.615,
          "fib_entry_level": "50%",
          "entry": 4540.285,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4539.74,
              "high": 4546.98,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4513.165, planned_rr=2.0, touch=2026-03-25T19:05:00Z, outcome=sl_first",
      "entry": 4513.165,
      "stop": 4539.74,
      "target": 4460.015,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T19:05:00Z",
      "outcome_time": "2026-03-25T20:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4486.59,
          "impulse_high": 4539.74,
          "fib_entry_level": "50%",
          "entry": 4513.165,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4507.705,
              "high": 4522.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4519.543, planned_rr=3.0, touch=2026-03-25T19:05:00Z, outcome=sl_first",
      "entry": 4519.543,
      "stop": 4539.74,
      "target": 4458.952,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T19:05:00Z",
      "outcome_time": "2026-03-25T20:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4486.59,
          "impulse_high": 4539.74,
          "fib_entry_level": "62%",
          "entry": 4519.543,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4519.01,
              "high": 4530.955,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4507.705,
              "high": 4522.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4509.91, planned_rr=2.0, touch=2026-03-25T20:35:00Z, outcome=sl_first",
      "entry": 4509.91,
      "stop": 4525.12,
      "target": 4479.49,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T20:35:00Z",
      "outcome_time": "2026-03-25T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4494.7,
          "impulse_high": 4525.12,
          "fib_entry_level": "50%",
          "entry": 4509.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4507.705,
              "high": 4522.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4513.56, planned_rr=3.0, touch=2026-03-25T20:35:00Z, outcome=sl_first",
      "entry": 4513.56,
      "stop": 4525.12,
      "target": 4478.882,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-25T20:35:00Z",
      "outcome_time": "2026-03-25T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4494.7,
          "impulse_high": 4525.12,
          "fib_entry_level": "62%",
          "entry": 4513.5604,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4507.705,
              "high": 4522.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4522.805, planned_rr=2.0, touch=2026-03-25T22:50:00Z, outcome=tp_first",
      "entry": 4522.805,
      "stop": 4533.31,
      "target": 4501.795,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-25T22:50:00Z",
      "outcome_time": "2026-03-25T23:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4512.3,
          "impulse_high": 4533.31,
          "fib_entry_level": "50%",
          "entry": 4522.805,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4519.01,
              "high": 4530.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-25T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-25T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4525.326, planned_rr=3.0, touch=2026-03-26T00:10:00Z, outcome=sl_first",
      "entry": 4525.326,
      "stop": 4533.31,
      "target": 4501.375,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T00:10:00Z",
      "outcome_time": "2026-03-26T00:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-25T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-25",
        "timestamp": "2026-03-25T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.3,
          "impulse_high": 4533.31,
          "fib_entry_level": "62%",
          "entry": 4525.3262,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4519.01,
              "high": 4530.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4602.645,
            "PDL": 4455.885,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4461.71, planned_rr=2.0, touch=2026-03-26T05:50:00Z, outcome=tp_first",
      "entry": 4461.71,
      "stop": 4484.445,
      "target": 4416.24,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-26T05:50:00Z",
      "outcome_time": "2026-03-26T06:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4438.975,
          "impulse_high": 4484.445,
          "fib_entry_level": "50%",
          "entry": 4461.71,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4450.885,
              "high": 4480.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4438.607, planned_rr=3.0, touch=2026-03-26T06:05:00Z, outcome=sl_first",
      "entry": 4438.607,
      "stop": 4450.885,
      "target": 4401.774,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T06:05:00Z",
      "outcome_time": "2026-03-26T06:45:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4418.575,
          "impulse_high": 4450.885,
          "fib_entry_level": "62%",
          "entry": 4438.6072,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4439.149, planned_rr=3.0, touch=2026-03-26T08:20:00Z, outcome=tp_first",
      "entry": 4439.149,
      "stop": 4447.65,
      "target": 4413.648,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-26T08:20:00Z",
      "outcome_time": "2026-03-26T08:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4425.28,
          "impulse_high": 4447.65,
          "fib_entry_level": "62%",
          "entry": 4439.149399999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4438.435,
              "high": 4440.155,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4433.817, planned_rr=3.0, touch=2026-03-26T12:05:00Z, outcome=sl_first",
      "entry": 4433.817,
      "stop": 4442.69,
      "target": 4407.198,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T12:05:00Z",
      "outcome_time": "2026-03-26T12:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4419.34,
          "impulse_high": 4442.69,
          "fib_entry_level": "62%",
          "entry": 4433.817,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4381.755, planned_rr=2.0, touch=2026-03-26T16:35:00Z, outcome=sl_first",
      "entry": 4381.755,
      "stop": 4396.56,
      "target": 4352.145,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T16:35:00Z",
      "outcome_time": "2026-03-26T17:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4366.95,
          "impulse_high": 4396.56,
          "fib_entry_level": "50%",
          "entry": 4381.755,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4380.115,
              "high": 4390.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4385.308, planned_rr=3.0, touch=2026-03-26T16:35:00Z, outcome=sl_first",
      "entry": 4385.308,
      "stop": 4396.56,
      "target": 4351.553,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T16:35:00Z",
      "outcome_time": "2026-03-26T17:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4366.95,
          "impulse_high": 4396.56,
          "fib_entry_level": "62%",
          "entry": 4385.3082,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4380.115,
              "high": 4390.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4380.676, planned_rr=3.0, touch=2026-03-26T18:20:00Z, outcome=sl_first",
      "entry": 4380.676,
      "stop": 4388.55,
      "target": 4357.056,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T18:20:00Z",
      "outcome_time": "2026-03-26T18:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4367.83,
          "impulse_high": 4388.55,
          "fib_entry_level": "62%",
          "entry": 4380.6764,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4380.115,
              "high": 4390.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4382.048, planned_rr=3.0, touch=2026-03-26T18:35:00Z, outcome=sl_first",
      "entry": 4382.048,
      "stop": 4373.515,
      "target": 4407.647,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T18:35:00Z",
      "outcome_time": "2026-03-26T19:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4373.515,
          "impulse_high": 4395.97,
          "fib_entry_level": "62%",
          "entry": 4382.0479000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4372.294, planned_rr=3.0, touch=2026-03-26T19:50:00Z, outcome=sl_first",
      "entry": 4372.294,
      "stop": 4380.17,
      "target": 4348.668,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T19:50:00Z",
      "outcome_time": "2026-03-26T20:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4359.445,
          "impulse_high": 4380.17,
          "fib_entry_level": "62%",
          "entry": 4372.2945,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T19-45-00Z_long_breaker_continuation",
      "timestamp": "2026-03-26T19:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4389.69, planned_rr=2.0, touch=2026-03-26T20:10:00Z, outcome=sl_first",
      "entry": 4389.69,
      "stop": 4359.445,
      "target": 4450.18,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T20:10:00Z",
      "outcome_time": "2026-03-26T20:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T19-45-00Z_long_breaker_continuation",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4359.445,
          "entry": 4389.6900000000005,
          "stop": 4359.445,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4388.55,
              "high": 4390.83,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4380.17,
              "high": 4380.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4375.27, planned_rr=3.0, touch=2026-03-26T20:10:00Z, outcome=tp_first",
      "entry": 4375.27,
      "stop": 4351.355,
      "target": 4447.016,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-26T20:10:00Z",
      "outcome_time": "2026-03-27T04:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4351.355,
          "impulse_high": 4414.29,
          "fib_entry_level": "62%",
          "entry": 4375.2703,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T20-00-00Z_long_breaker_continuation",
      "timestamp": "2026-03-26T20:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4389.69, planned_rr=2.0, touch=2026-03-26T20:10:00Z, outcome=tp_first",
      "entry": 4389.69,
      "stop": 4351.355,
      "target": 4466.36,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-26T20:10:00Z",
      "outcome_time": "2026-03-27T05:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T20-00-00Z_long_breaker_continuation",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4351.355,
          "entry": 4389.6900000000005,
          "stop": 4351.355,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4388.55,
              "high": 4390.83,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4380.17,
              "high": 4380.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T20-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-03-26T20:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4389.69, planned_rr=2.0, touch=2026-03-26T20:10:00Z, outcome=tp_first",
      "entry": 4389.69,
      "stop": 4351.355,
      "target": 4466.36,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-26T20:10:00Z",
      "outcome_time": "2026-03-27T05:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T20-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4351.355,
          "entry": 4389.6900000000005,
          "stop": 4351.355,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4388.55,
              "high": 4390.83,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4380.17,
              "high": 4380.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T20-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-03-26T20:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4397.175, planned_rr=2.0, touch=2026-03-26T20:10:00Z, outcome=tp_first",
      "entry": 4397.175,
      "stop": 4351.355,
      "target": 4488.815,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-26T20:10:00Z",
      "outcome_time": "2026-03-27T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T20-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4351.355,
          "entry": 4397.175,
          "stop": 4351.355,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4396.126, planned_rr=3.0, touch=2026-03-26T20:50:00Z, outcome=sl_first",
      "entry": 4396.126,
      "stop": 4410.26,
      "target": 4353.724,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-26T20:50:00Z",
      "outcome_time": "2026-03-26T22:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4373.065,
          "impulse_high": 4410.26,
          "fib_entry_level": "62%",
          "entry": 4396.1259,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4402.14, planned_rr=2.0, touch=2026-03-26T23:05:00Z, outcome=tp_first",
      "entry": 4402.14,
      "stop": 4414.44,
      "target": 4377.54,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-26T23:05:00Z",
      "outcome_time": "2026-03-27T00:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4389.84,
          "impulse_high": 4414.44,
          "fib_entry_level": "50%",
          "entry": 4402.139999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4396.835,
              "high": 4403.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-26T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-26T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4405.092, planned_rr=3.0, touch=2026-03-26T23:35:00Z, outcome=tp_first",
      "entry": 4405.092,
      "stop": 4414.44,
      "target": 4377.048,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-26T23:35:00Z",
      "outcome_time": "2026-03-27T00:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-26T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-26",
        "timestamp": "2026-03-26T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4389.84,
          "impulse_high": 4414.44,
          "fib_entry_level": "62%",
          "entry": 4405.092,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4544.815,
            "PDL": 4351.355,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4425.631, planned_rr=3.0, touch=2026-03-27T02:30:00Z, outcome=tp_first",
      "entry": 4425.631,
      "stop": 4416.99,
      "target": 4451.555,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-27T02:30:00Z",
      "outcome_time": "2026-03-27T05:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4416.99,
          "impulse_high": 4439.73,
          "fib_entry_level": "62%",
          "entry": 4425.6312,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4420.485,
              "high": 4426.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4462.898, planned_rr=3.0, touch=2026-03-27T05:50:00Z, outcome=sl_first",
      "entry": 4462.898,
      "stop": 4468.67,
      "target": 4445.581,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T05:50:00Z",
      "outcome_time": "2026-03-27T06:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4453.48,
          "impulse_high": 4468.67,
          "fib_entry_level": "62%",
          "entry": 4462.8978,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4439.208, planned_rr=2.0, touch=2026-03-27T08:20:00Z, outcome=tp_first",
      "entry": 4439.208,
      "stop": 4447.655,
      "target": 4422.313,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-27T08:20:00Z",
      "outcome_time": "2026-03-27T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4430.76,
          "impulse_high": 4447.655,
          "fib_entry_level": "50%",
          "entry": 4439.2075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4428.83,
              "high": 4440.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4431.392, planned_rr=2.0, touch=2026-03-27T08:50:00Z, outcome=tp_first",
      "entry": 4431.392,
      "stop": 4438.76,
      "target": 4416.657,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-27T08:50:00Z",
      "outcome_time": "2026-03-27T10:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4424.025,
          "impulse_high": 4438.76,
          "fib_entry_level": "50%",
          "entry": 4431.3925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4428.83,
              "high": 4440.13,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4424.0,
              "high": 4431.61,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4433.161, planned_rr=3.0, touch=2026-03-27T08:50:00Z, outcome=tp_first",
      "entry": 4433.161,
      "stop": 4438.76,
      "target": 4416.363,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-27T08:50:00Z",
      "outcome_time": "2026-03-27T10:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4424.025,
          "impulse_high": 4438.76,
          "fib_entry_level": "62%",
          "entry": 4433.1607,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4428.83,
              "high": 4440.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4421.547, planned_rr=2.0, touch=2026-03-27T10:35:00Z, outcome=sl_first",
      "entry": 4421.547,
      "stop": 4430.605,
      "target": 4403.432,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T10:35:00Z",
      "outcome_time": "2026-03-27T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4412.49,
          "impulse_high": 4430.605,
          "fib_entry_level": "50%",
          "entry": 4421.5475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4419.08,
              "high": 4424.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4423.721, planned_rr=3.0, touch=2026-03-27T10:35:00Z, outcome=sl_first",
      "entry": 4423.721,
      "stop": 4430.605,
      "target": 4403.07,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T10:35:00Z",
      "outcome_time": "2026-03-27T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4412.49,
          "impulse_high": 4430.605,
          "fib_entry_level": "62%",
          "entry": 4423.721299999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4419.08,
              "high": 4424.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4436.32, planned_rr=3.0, touch=2026-03-27T13:15:00Z, outcome=sl_first",
      "entry": 4436.32,
      "stop": 4443.905,
      "target": 4413.566,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T13:15:00Z",
      "outcome_time": "2026-03-27T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4423.945,
          "impulse_high": 4443.905,
          "fib_entry_level": "62%",
          "entry": 4436.3202,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4489.283, planned_rr=2.0, touch=2026-03-27T14:50:00Z, outcome=tp_first",
      "entry": 4489.283,
      "stop": 4463.88,
      "target": 4540.088,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-27T14:50:00Z",
      "outcome_time": "2026-03-27T15:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4463.88,
          "impulse_high": 4514.685,
          "fib_entry_level": "50%",
          "entry": 4489.2825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4464.27,
              "high": 4501.78,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4514.024, planned_rr=3.0, touch=2026-03-27T15:05:00Z, outcome=tp_first",
      "entry": 4514.024,
      "stop": 4501.78,
      "target": 4550.754,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-27T15:05:00Z",
      "outcome_time": "2026-03-27T15:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4501.78,
          "impulse_high": 4534.0,
          "fib_entry_level": "62%",
          "entry": 4514.0235999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4534.212, planned_rr=3.0, touch=2026-03-27T15:20:00Z, outcome=sl_first",
      "entry": 4534.212,
      "stop": 4521.085,
      "target": 4573.593,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T15:20:00Z",
      "outcome_time": "2026-03-27T15:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4521.085,
          "impulse_high": 4555.63,
          "fib_entry_level": "62%",
          "entry": 4534.2121,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4517.278, planned_rr=2.0, touch=2026-03-27T16:35:00Z, outcome=tp_first",
      "entry": 4517.278,
      "stop": 4528.935,
      "target": 4493.962,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-27T16:35:00Z",
      "outcome_time": "2026-03-27T17:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4505.62,
          "impulse_high": 4528.935,
          "fib_entry_level": "50%",
          "entry": 4517.2775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4511.37,
              "high": 4524.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.075, planned_rr=3.0, touch=2026-03-27T17:05:00Z, outcome=tp_first",
      "entry": 4520.075,
      "stop": 4528.935,
      "target": 4493.496,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-27T17:05:00Z",
      "outcome_time": "2026-03-27T17:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4505.62,
          "impulse_high": 4528.935,
          "fib_entry_level": "62%",
          "entry": 4520.0753,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4511.37,
              "high": 4524.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4502.432, planned_rr=3.0, touch=2026-03-27T18:15:00Z, outcome=sl_first",
      "entry": 4502.432,
      "stop": 4511.85,
      "target": 4474.177,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-27T18:15:00Z",
      "outcome_time": "2026-03-27T18:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4487.065,
          "impulse_high": 4511.85,
          "fib_entry_level": "62%",
          "entry": 4502.4317,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.4,
              "high": 4508.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-27T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-27T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4500.346, planned_rr=3.0, touch=2026-03-29T22:05:00Z, outcome=ambiguous_same_bar",
      "entry": 4500.346,
      "stop": 4505.995,
      "target": 4483.4,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-03-29T22:05:00Z",
      "outcome_time": "2026-03-29T22:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-27T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-27",
        "timestamp": "2026-03-27T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.13,
          "impulse_high": 4505.995,
          "fib_entry_level": "62%",
          "entry": 4500.3463,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-29T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-29T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4501.261, planned_rr=3.0, touch=2026-03-29T22:05:00Z, outcome=sl_first",
      "entry": 4501.261,
      "stop": 4513.55,
      "target": 4464.393,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-29T22:05:00Z",
      "outcome_time": "2026-03-29T22:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-29T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-29",
        "timestamp": "2026-03-29T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4481.21,
          "impulse_high": 4513.55,
          "fib_entry_level": "62%",
          "entry": 4501.2608,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-29T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-29T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4459.052, planned_rr=2.0, touch=2026-03-29T23:35:00Z, outcome=tp_first",
      "entry": 4459.052,
      "stop": 4472.43,
      "target": 4432.297,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-29T23:35:00Z",
      "outcome_time": "2026-03-30T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-29T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-29",
        "timestamp": "2026-03-29T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4445.675,
          "impulse_high": 4472.43,
          "fib_entry_level": "50%",
          "entry": 4459.0525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4455.835,
              "high": 4472.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-29T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-29T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4462.263, planned_rr=3.0, touch=2026-03-30T00:20:00Z, outcome=tp_first",
      "entry": 4462.263,
      "stop": 4472.43,
      "target": 4431.762,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-30T00:20:00Z",
      "outcome_time": "2026-03-30T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-29T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-29",
        "timestamp": "2026-03-29T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4445.675,
          "impulse_high": 4472.43,
          "fib_entry_level": "62%",
          "entry": 4462.2631,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4455.835,
              "high": 4472.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4555.63,
            "PDL": 4375.525,
            "PWH": 4602.645,
            "PWL": 4099.125
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4438.649, planned_rr=3.0, touch=2026-03-30T00:05:00Z, outcome=sl_first",
      "entry": 4438.649,
      "stop": 4451.655,
      "target": 4399.633,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T00:05:00Z",
      "outcome_time": "2026-03-30T00:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4417.43,
          "impulse_high": 4451.655,
          "fib_entry_level": "62%",
          "entry": 4438.6494999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4444.908, planned_rr=2.0, touch=2026-03-30T00:20:00Z, outcome=tp_first",
      "entry": 4444.908,
      "stop": 4422.805,
      "target": 4489.113,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T00:20:00Z",
      "outcome_time": "2026-03-30T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4422.805,
          "impulse_high": 4467.01,
          "fib_entry_level": "50%",
          "entry": 4444.9075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4442.76,
              "high": 4445.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4439.603, planned_rr=3.0, touch=2026-03-30T00:40:00Z, outcome=tp_first",
      "entry": 4439.603,
      "stop": 4422.805,
      "target": 4489.997,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-30T00:40:00Z",
      "outcome_time": "2026-03-30T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4422.805,
          "impulse_high": 4467.01,
          "fib_entry_level": "62%",
          "entry": 4439.6029,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4446.927, planned_rr=2.0, touch=2026-03-30T01:05:00Z, outcome=tp_first",
      "entry": 4446.927,
      "stop": 4431.825,
      "target": 4477.132,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T01:05:00Z",
      "outcome_time": "2026-03-30T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4431.825,
          "impulse_high": 4462.03,
          "fib_entry_level": "50%",
          "entry": 4446.9275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4445.15,
              "high": 4466.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4460.648, planned_rr=2.0, touch=2026-03-30T02:30:00Z, outcome=tp_first",
      "entry": 4460.648,
      "stop": 4445.45,
      "target": 4491.043,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T02:30:00Z",
      "outcome_time": "2026-03-30T02:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4445.45,
          "impulse_high": 4475.845,
          "fib_entry_level": "50%",
          "entry": 4460.6475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4445.15,
              "high": 4466.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4479.29, planned_rr=2.0, touch=2026-03-30T02:40:00Z, outcome=tp_first",
      "entry": 4479.29,
      "stop": 4458.89,
      "target": 4520.09,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T02:40:00Z",
      "outcome_time": "2026-03-30T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4458.89,
          "impulse_high": 4499.69,
          "fib_entry_level": "50%",
          "entry": 4479.29,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4479.015,
              "high": 4496.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4494.013, planned_rr=2.0, touch=2026-03-30T03:05:00Z, outcome=tp_first",
      "entry": 4494.013,
      "stop": 4479.095,
      "target": 4523.848,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T03:05:00Z",
      "outcome_time": "2026-03-30T05:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4479.095,
          "impulse_high": 4508.93,
          "fib_entry_level": "50%",
          "entry": 4494.012500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4479.015,
              "high": 4496.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4490.432, planned_rr=3.0, touch=2026-03-30T04:05:00Z, outcome=tp_first",
      "entry": 4490.432,
      "stop": 4479.095,
      "target": 4524.444,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-30T04:05:00Z",
      "outcome_time": "2026-03-30T05:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4479.095,
          "impulse_high": 4508.93,
          "fib_entry_level": "62%",
          "entry": 4490.4323,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4479.015,
              "high": 4496.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4531.045, planned_rr=2.0, touch=2026-03-30T09:35:00Z, outcome=tp_first",
      "entry": 4531.045,
      "stop": 4523.675,
      "target": 4545.785,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T09:35:00Z",
      "outcome_time": "2026-03-30T11:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4523.675,
          "impulse_high": 4538.415,
          "fib_entry_level": "50%",
          "entry": 4531.045,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4526.89,
              "high": 4535.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4529.276, planned_rr=3.0, touch=2026-03-30T09:35:00Z, outcome=tp_first",
      "entry": 4529.276,
      "stop": 4523.675,
      "target": 4546.08,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-30T09:35:00Z",
      "outcome_time": "2026-03-30T11:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4523.675,
          "impulse_high": 4538.415,
          "fib_entry_level": "62%",
          "entry": 4529.2762,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4526.89,
              "high": 4535.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4552.538, planned_rr=2.0, touch=2026-03-30T11:40:00Z, outcome=tp_first",
      "entry": 4552.538,
      "stop": 4538.635,
      "target": 4580.343,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T11:40:00Z",
      "outcome_time": "2026-03-30T11:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4538.635,
          "impulse_high": 4566.44,
          "fib_entry_level": "50%",
          "entry": 4552.5375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4548.575,
              "high": 4556.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4549.201, planned_rr=3.0, touch=2026-03-30T11:40:00Z, outcome=sl_first",
      "entry": 4549.201,
      "stop": 4538.635,
      "target": 4580.899,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T11:40:00Z",
      "outcome_time": "2026-03-30T13:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4538.635,
          "impulse_high": 4566.44,
          "fib_entry_level": "62%",
          "entry": 4549.2009,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4548.575,
              "high": 4556.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4562.035, planned_rr=2.0, touch=2026-03-30T12:25:00Z, outcome=tp_first",
      "entry": 4562.035,
      "stop": 4555.89,
      "target": 4574.325,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T12:25:00Z",
      "outcome_time": "2026-03-30T12:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4555.89,
          "impulse_high": 4568.18,
          "fib_entry_level": "50%",
          "entry": 4562.035,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4561.49,
              "high": 4564.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4560.56, planned_rr=3.0, touch=2026-03-30T13:20:00Z, outcome=sl_first",
      "entry": 4560.56,
      "stop": 4555.89,
      "target": 4574.571,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T13:20:00Z",
      "outcome_time": "2026-03-30T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4555.89,
          "impulse_high": 4568.18,
          "fib_entry_level": "62%",
          "entry": 4560.5602,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4536.366, planned_rr=3.0, touch=2026-03-30T13:50:00Z, outcome=sl_first",
      "entry": 4536.366,
      "stop": 4548.275,
      "target": 4500.638,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T13:50:00Z",
      "outcome_time": "2026-03-30T15:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4516.935,
          "impulse_high": 4548.275,
          "fib_entry_level": "62%",
          "entry": 4536.3658,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4536.095,
              "high": 4543.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4526.396, planned_rr=3.0, touch=2026-03-30T14:35:00Z, outcome=sl_first",
      "entry": 4526.396,
      "stop": 4534.87,
      "target": 4500.974,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T14:35:00Z",
      "outcome_time": "2026-03-30T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.57,
          "impulse_high": 4534.87,
          "fib_entry_level": "62%",
          "entry": 4526.396,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4531.562, planned_rr=2.0, touch=2026-03-30T14:50:00Z, outcome=tp_first",
      "entry": 4531.562,
      "stop": 4521.58,
      "target": 4551.528,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-30T14:50:00Z",
      "outcome_time": "2026-03-30T15:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4521.58,
          "impulse_high": 4541.545,
          "fib_entry_level": "50%",
          "entry": 4531.5625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4524.7,
              "high": 4534.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4529.167, planned_rr=3.0, touch=2026-03-30T15:15:00Z, outcome=tp_first",
      "entry": 4529.167,
      "stop": 4521.58,
      "target": 4551.927,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-30T15:15:00Z",
      "outcome_time": "2026-03-30T15:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4521.58,
          "impulse_high": 4541.545,
          "fib_entry_level": "62%",
          "entry": 4529.1667,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4524.7,
              "high": 4534.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4540.898, planned_rr=2.0, touch=2026-03-30T16:00:00Z, outcome=sl_first",
      "entry": 4540.898,
      "stop": 4527.77,
      "target": 4567.152,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T16:00:00Z",
      "outcome_time": "2026-03-30T17:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4527.77,
          "impulse_high": 4554.025,
          "fib_entry_level": "50%",
          "entry": 4540.8975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4534.285,
              "high": 4545.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4537.747, planned_rr=3.0, touch=2026-03-30T16:25:00Z, outcome=sl_first",
      "entry": 4537.747,
      "stop": 4527.77,
      "target": 4567.678,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T16:25:00Z",
      "outcome_time": "2026-03-30T17:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4527.77,
          "impulse_high": 4554.025,
          "fib_entry_level": "62%",
          "entry": 4537.7469,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4534.285,
              "high": 4545.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4508.688, planned_rr=2.0, touch=2026-03-30T18:50:00Z, outcome=sl_first",
      "entry": 4508.688,
      "stop": 4518.87,
      "target": 4488.323,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T18:50:00Z",
      "outcome_time": "2026-03-30T22:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4498.505,
          "impulse_high": 4518.87,
          "fib_entry_level": "50%",
          "entry": 4508.6875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4505.11,
              "high": 4512.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4511.131, planned_rr=3.0, touch=2026-03-30T18:50:00Z, outcome=sl_first",
      "entry": 4511.131,
      "stop": 4518.87,
      "target": 4487.915,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T18:50:00Z",
      "outcome_time": "2026-03-30T22:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4498.505,
          "impulse_high": 4518.87,
          "fib_entry_level": "62%",
          "entry": 4511.1313,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4505.11,
              "high": 4512.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-30T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-30T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4504.1, planned_rr=3.0, touch=2026-03-30T23:05:00Z, outcome=sl_first",
      "entry": 4504.1,
      "stop": 4511.025,
      "target": 4483.323,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-30T23:05:00Z",
      "outcome_time": "2026-03-30T23:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-30T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-30",
        "timestamp": "2026-03-30T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4492.8,
          "impulse_high": 4511.025,
          "fib_entry_level": "62%",
          "entry": 4504.0995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.73,
            "PDL": 4417.43,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4564.628, planned_rr=2.0, touch=2026-03-31T03:15:00Z, outcome=sl_first",
      "entry": 4564.628,
      "stop": 4543.59,
      "target": 4606.703,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T03:15:00Z",
      "outcome_time": "2026-03-31T07:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4543.59,
          "impulse_high": 4585.665,
          "fib_entry_level": "50%",
          "entry": 4564.6275000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4550.865,
              "high": 4577.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4559.578, planned_rr=3.0, touch=2026-03-31T03:20:00Z, outcome=sl_first",
      "entry": 4559.578,
      "stop": 4543.59,
      "target": 4607.544,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T03:20:00Z",
      "outcome_time": "2026-03-31T07:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4543.59,
          "impulse_high": 4585.665,
          "fib_entry_level": "62%",
          "entry": 4559.5785,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4550.865,
              "high": 4577.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4593.311, planned_rr=3.0, touch=2026-03-31T01:40:00Z, outcome=sl_first",
      "entry": 4593.311,
      "stop": 4577.435,
      "target": 4640.941,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T01:40:00Z",
      "outcome_time": "2026-03-31T02:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4577.435,
          "impulse_high": 4619.215,
          "fib_entry_level": "62%",
          "entry": 4593.3114000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4585.665,
              "high": 4595.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4577.095, planned_rr=2.0, touch=2026-03-31T02:50:00Z, outcome=tp_first",
      "entry": 4577.095,
      "stop": 4588.395,
      "target": 4554.495,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-31T02:50:00Z",
      "outcome_time": "2026-03-31T03:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4565.795,
          "impulse_high": 4588.395,
          "fib_entry_level": "50%",
          "entry": 4577.095,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4566.205,
              "high": 4577.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4579.807, planned_rr=3.0, touch=2026-03-31T02:50:00Z, outcome=tp_first",
      "entry": 4579.807,
      "stop": 4588.395,
      "target": 4554.043,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-31T02:50:00Z",
      "outcome_time": "2026-03-31T03:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4565.795,
          "impulse_high": 4588.395,
          "fib_entry_level": "62%",
          "entry": 4579.807000000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T05-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-03-31T05:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-03-31T05-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4571.0,
          "entry": 4578.092500000001,
          "stop": 4571.0,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4577.26,
              "high": 4578.925,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4566.205,
              "high": 4577.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4548.97, planned_rr=3.0, touch=2026-03-31T10:35:00Z, outcome=sl_first",
      "entry": 4548.97,
      "stop": 4560.875,
      "target": 4513.253,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T10:35:00Z",
      "outcome_time": "2026-03-31T11:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4529.545,
          "impulse_high": 4560.875,
          "fib_entry_level": "62%",
          "entry": 4548.9696,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T10-30-00Z_long_breaker_continuation",
      "timestamp": "2026-03-31T10:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4556.92, planned_rr=2.0, touch=2026-03-31T11:10:00Z, outcome=tp_first",
      "entry": 4556.92,
      "stop": 4529.545,
      "target": 4611.67,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-31T11:10:00Z",
      "outcome_time": "2026-03-31T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T10-30-00Z_long_breaker_continuation",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4529.545,
          "entry": 4556.92,
          "stop": 4529.545,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4556.78,
              "high": 4557.06,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4563.975,
              "high": 4568.95,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4578.228, planned_rr=3.0, touch=2026-03-31T11:35:00Z, outcome=sl_first",
      "entry": 4578.228,
      "stop": 4568.95,
      "target": 4606.061,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T11:35:00Z",
      "outcome_time": "2026-03-31T13:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4568.95,
          "impulse_high": 4593.365,
          "fib_entry_level": "62%",
          "entry": 4578.2276999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4587.059, planned_rr=3.0, touch=2026-03-31T12:00:00Z, outcome=sl_first",
      "entry": 4587.059,
      "stop": 4593.335,
      "target": 4568.232,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T12:00:00Z",
      "outcome_time": "2026-03-31T12:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4576.82,
          "impulse_high": 4593.335,
          "fib_entry_level": "62%",
          "entry": 4587.0593,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4597.49, planned_rr=2.0, touch=2026-03-31T13:50:00Z, outcome=tp_first",
      "entry": 4597.49,
      "stop": 4585.24,
      "target": 4621.99,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-03-31T13:50:00Z",
      "outcome_time": "2026-03-31T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4585.24,
          "impulse_high": 4609.74,
          "fib_entry_level": "50%",
          "entry": 4597.49,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4589.48,
              "high": 4603.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4608.448, planned_rr=3.0, touch=2026-03-31T15:25:00Z, outcome=tp_first",
      "entry": 4608.448,
      "stop": 4598.94,
      "target": 4636.97,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-31T15:25:00Z",
      "outcome_time": "2026-03-31T16:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4598.94,
          "impulse_high": 4623.96,
          "fib_entry_level": "62%",
          "entry": 4608.4475999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4680.755, planned_rr=3.0, touch=2026-03-31T22:35:00Z, outcome=sl_first",
      "entry": 4680.755,
      "stop": 4671.08,
      "target": 4709.779,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-03-31T22:35:00Z",
      "outcome_time": "2026-03-31T22:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4671.08,
          "impulse_high": 4696.54,
          "fib_entry_level": "62%",
          "entry": 4680.7548,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-03-31T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-03-31T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4686.925, planned_rr=3.0, touch=2026-03-31T23:35:00Z, outcome=tp_first",
      "entry": 4686.925,
      "stop": 4681.63,
      "target": 4702.811,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-03-31T23:35:00Z",
      "outcome_time": "2026-04-01T00:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-03-31T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-03-31",
        "timestamp": "2026-03-31T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4681.63,
          "impulse_high": 4695.565,
          "fib_entry_level": "62%",
          "entry": 4686.9253,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4684.81,
              "high": 4688.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4687.335,
            "PDL": 4482.66,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4710.125, planned_rr=3.0, touch=2026-04-01T00:20:00Z, outcome=sl_first",
      "entry": 4710.125,
      "stop": 4702.77,
      "target": 4732.19,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T00:20:00Z",
      "outcome_time": "2026-04-01T00:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4702.77,
          "impulse_high": 4722.125,
          "fib_entry_level": "62%",
          "entry": 4710.124900000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4693.081, planned_rr=3.0, touch=2026-04-01T05:35:00Z, outcome=sl_first",
      "entry": 4693.081,
      "stop": 4686.53,
      "target": 4712.735,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T05:35:00Z",
      "outcome_time": "2026-04-01T05:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4686.53,
          "impulse_high": 4703.77,
          "fib_entry_level": "62%",
          "entry": 4693.0812,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4702.182, planned_rr=2.0, touch=2026-04-01T06:20:00Z, outcome=tp_first",
      "entry": 4702.182,
      "stop": 4692.795,
      "target": 4720.957,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-01T06:20:00Z",
      "outcome_time": "2026-04-01T06:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4692.795,
          "impulse_high": 4711.57,
          "fib_entry_level": "50%",
          "entry": 4702.1825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4702.18,
              "high": 4713.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4717.94, planned_rr=3.0, touch=2026-04-01T07:05:00Z, outcome=tp_first",
      "entry": 4717.94,
      "stop": 4708.565,
      "target": 4746.063,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-01T07:05:00Z",
      "outcome_time": "2026-04-01T07:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.565,
          "impulse_high": 4733.235,
          "fib_entry_level": "62%",
          "entry": 4717.9396,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4751.807, planned_rr=3.0, touch=2026-04-01T11:35:00Z, outcome=sl_first",
      "entry": 4751.807,
      "stop": 4745.005,
      "target": 4772.213,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T11:35:00Z",
      "outcome_time": "2026-04-01T12:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4745.005,
          "impulse_high": 4762.905,
          "fib_entry_level": "62%",
          "entry": 4751.807,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4746.36,
              "high": 4752.56,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4741.975, planned_rr=2.0, touch=2026-04-01T12:35:00Z, outcome=sl_first",
      "entry": 4741.975,
      "stop": 4730.955,
      "target": 4764.015,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T12:35:00Z",
      "outcome_time": "2026-04-01T12:50:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4730.955,
          "impulse_high": 4752.995,
          "fib_entry_level": "50%",
          "entry": 4741.975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4740.65,
              "high": 4745.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4739.33, planned_rr=3.0, touch=2026-04-01T12:35:00Z, outcome=sl_first",
      "entry": 4739.33,
      "stop": 4730.955,
      "target": 4764.456,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T12:35:00Z",
      "outcome_time": "2026-04-01T12:50:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4730.955,
          "impulse_high": 4752.995,
          "fib_entry_level": "62%",
          "entry": 4739.3302,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4766.835, planned_rr=2.0, touch=2026-04-01T22:20:00Z, outcome=tp_first",
      "entry": 4766.835,
      "stop": 4757.655,
      "target": 4785.195,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-01T22:20:00Z",
      "outcome_time": "2026-04-01T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4757.655,
          "impulse_high": 4776.015,
          "fib_entry_level": "50%",
          "entry": 4766.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4760.62,
              "high": 4770.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4764.632, planned_rr=3.0, touch=2026-04-01T22:20:00Z, outcome=tp_first",
      "entry": 4764.632,
      "stop": 4757.655,
      "target": 4785.562,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-01T22:20:00Z",
      "outcome_time": "2026-04-01T23:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4757.655,
          "impulse_high": 4776.015,
          "fib_entry_level": "62%",
          "entry": 4764.6318,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4760.62,
              "high": 4770.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-01T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-01T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4780.637, planned_rr=3.0, touch=2026-04-01T23:05:00Z, outcome=sl_first",
      "entry": 4780.637,
      "stop": 4773.795,
      "target": 4801.163,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-01T23:05:00Z",
      "outcome_time": "2026-04-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-01T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-01",
        "timestamp": "2026-04-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4773.795,
          "impulse_high": 4791.8,
          "fib_entry_level": "62%",
          "entry": 4780.6369,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4793.195,
            "PDL": 4662.125,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4784.398, planned_rr=2.0, touch=2026-04-02T00:05:00Z, outcome=sl_first",
      "entry": 4784.398,
      "stop": 4775.21,
      "target": 4802.773,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T00:05:00Z",
      "outcome_time": "2026-04-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4775.21,
          "impulse_high": 4793.585,
          "fib_entry_level": "50%",
          "entry": 4784.3975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4783.005,
              "high": 4788.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4782.193, planned_rr=3.0, touch=2026-04-02T00:05:00Z, outcome=sl_first",
      "entry": 4782.193,
      "stop": 4775.21,
      "target": 4803.14,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T00:05:00Z",
      "outcome_time": "2026-04-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4775.21,
          "impulse_high": 4793.585,
          "fib_entry_level": "62%",
          "entry": 4782.1925,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4601.654, planned_rr=3.0, touch=2026-04-02T12:10:00Z, outcome=tp_first",
      "entry": 4601.654,
      "stop": 4594.71,
      "target": 4622.488,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-02T12:10:00Z",
      "outcome_time": "2026-04-02T12:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4594.71,
          "impulse_high": 4612.985,
          "fib_entry_level": "62%",
          "entry": 4601.6545,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4620.003, planned_rr=2.0, touch=2026-04-02T12:20:00Z, outcome=sl_first",
      "entry": 4620.003,
      "stop": 4609.645,
      "target": 4640.718,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T12:20:00Z",
      "outcome_time": "2026-04-02T12:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4609.645,
          "impulse_high": 4630.36,
          "fib_entry_level": "50%",
          "entry": 4620.0025000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4607.94,
              "high": 4631.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4617.517, planned_rr=3.0, touch=2026-04-02T12:20:00Z, outcome=sl_first",
      "entry": 4617.517,
      "stop": 4609.645,
      "target": 4641.132,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T12:20:00Z",
      "outcome_time": "2026-04-02T12:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4609.645,
          "impulse_high": 4630.36,
          "fib_entry_level": "62%",
          "entry": 4617.5167,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4607.94,
              "high": 4631.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T13-00-00Z_long_breaker_continuation",
      "timestamp": "2026-04-02T13:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4614.438, planned_rr=2.0, touch=2026-04-02T13:45:00Z, outcome=tp_first",
      "entry": 4614.438,
      "stop": 4580.65,
      "target": 4682.013,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-02T13:45:00Z",
      "outcome_time": "2026-04-02T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T13-00-00Z_long_breaker_continuation",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4580.65,
          "entry": 4614.4375,
          "stop": 4580.65,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4612.985,
              "high": 4615.89,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4607.94,
              "high": 4631.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4657.567, planned_rr=3.0, touch=2026-04-02T15:50:00Z, outcome=sl_first",
      "entry": 4657.567,
      "stop": 4646.125,
      "target": 4691.892,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T15:50:00Z",
      "outcome_time": "2026-04-02T16:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4646.125,
          "impulse_high": 4676.235,
          "fib_entry_level": "62%",
          "entry": 4657.5668,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-02T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4674.498, planned_rr=3.0, touch=2026-04-02T14:35:00Z, outcome=sl_first",
      "entry": 4674.498,
      "stop": 4658.935,
      "target": 4721.187,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-02T14:35:00Z",
      "outcome_time": "2026-04-02T15:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-02",
        "timestamp": "2026-04-02T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4658.935,
          "impulse_high": 4699.89,
          "fib_entry_level": "62%",
          "entry": 4674.4979,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4800.8,
            "PDL": 4553.85,
            "PWH": 4800.8,
            "PWL": 4417.43
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4614.496, planned_rr=3.0, touch=2026-04-06T00:15:00Z, outcome=sl_first",
      "entry": 4614.496,
      "stop": 4607.035,
      "target": 4636.88,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T00:15:00Z",
      "outcome_time": "2026-04-06T00:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4607.035,
          "impulse_high": 4626.67,
          "fib_entry_level": "62%",
          "entry": 4614.4963,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4630.323, planned_rr=3.0, touch=2026-04-06T01:05:00Z, outcome=sl_first",
      "entry": 4630.323,
      "stop": 4622.63,
      "target": 4653.402,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T01:05:00Z",
      "outcome_time": "2026-04-06T01:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4622.63,
          "impulse_high": 4642.875,
          "fib_entry_level": "62%",
          "entry": 4630.3231,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4649.77, planned_rr=3.0, touch=2026-04-06T02:35:00Z, outcome=sl_first",
      "entry": 4649.77,
      "stop": 4636.31,
      "target": 4690.148,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T02:35:00Z",
      "outcome_time": "2026-04-06T03:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4636.31,
          "impulse_high": 4671.73,
          "fib_entry_level": "62%",
          "entry": 4649.7696,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4670.937, planned_rr=3.0, touch=2026-04-06T12:35:00Z, outcome=sl_first",
      "entry": 4670.937,
      "stop": 4665.94,
      "target": 4685.928,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T12:35:00Z",
      "outcome_time": "2026-04-06T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4665.94,
          "impulse_high": 4679.09,
          "fib_entry_level": "62%",
          "entry": 4670.937,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4669.408, planned_rr=3.0, touch=2026-04-06T13:50:00Z, outcome=sl_first",
      "entry": 4669.408,
      "stop": 4661.77,
      "target": 4692.322,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T13:50:00Z",
      "outcome_time": "2026-04-06T14:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4661.77,
          "impulse_high": 4681.87,
          "fib_entry_level": "62%",
          "entry": 4669.408,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-06T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4677.469, planned_rr=3.0, touch=2026-04-06T14:45:00Z, outcome=sl_first",
      "entry": 4677.469,
      "stop": 4670.785,
      "target": 4697.522,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T14:45:00Z",
      "outcome_time": "2026-04-06T15:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.785,
          "impulse_high": 4688.375,
          "fib_entry_level": "62%",
          "entry": 4677.4692,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-06T18-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-04-06T18:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4658.42, planned_rr=2.0, touch=2026-04-06T18:55:00Z, outcome=sl_first",
      "entry": 4658.42,
      "stop": 4648.905,
      "target": 4677.45,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-06T18:55:00Z",
      "outcome_time": "2026-04-06T18:55:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-06T18-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-04-06",
        "timestamp": "2026-04-06T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4648.905,
          "entry": 4658.42,
          "stop": 4648.905,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4657.375,
              "high": 4659.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4706.875,
            "PDL": 4600.85,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4645.383, planned_rr=3.0, touch=2026-04-07T01:35:00Z, outcome=sl_first",
      "entry": 4645.383,
      "stop": 4637.935,
      "target": 4667.727,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T01:35:00Z",
      "outcome_time": "2026-04-07T01:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4637.935,
          "impulse_high": 4657.535,
          "fib_entry_level": "62%",
          "entry": 4645.383,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4635.32,
              "high": 4645.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4640.392, planned_rr=2.0, touch=2026-04-07T02:35:00Z, outcome=tp_first",
      "entry": 4640.392,
      "stop": 4633.85,
      "target": 4653.477,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-07T02:35:00Z",
      "outcome_time": "2026-04-07T02:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4633.85,
          "impulse_high": 4646.935,
          "fib_entry_level": "50%",
          "entry": 4640.3925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4635.32,
              "high": 4645.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4638.822, planned_rr=3.0, touch=2026-04-07T02:35:00Z, outcome=tp_first",
      "entry": 4638.822,
      "stop": 4633.85,
      "target": 4653.739,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T02:35:00Z",
      "outcome_time": "2026-04-07T02:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4633.85,
          "impulse_high": 4646.935,
          "fib_entry_level": "62%",
          "entry": 4638.822300000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4635.32,
              "high": 4645.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4656.778, planned_rr=2.0, touch=2026-04-07T05:00:00Z, outcome=sl_first",
      "entry": 4656.778,
      "stop": 4649.66,
      "target": 4671.013,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T05:00:00Z",
      "outcome_time": "2026-04-07T05:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4649.66,
          "impulse_high": 4663.895,
          "fib_entry_level": "50%",
          "entry": 4656.7775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4651.5,
              "high": 4659.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4655.069, planned_rr=3.0, touch=2026-04-07T05:05:00Z, outcome=sl_first",
      "entry": 4655.069,
      "stop": 4649.66,
      "target": 4671.297,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T05:05:00Z",
      "outcome_time": "2026-04-07T05:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T04-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4649.66,
          "impulse_high": 4663.895,
          "fib_entry_level": "62%",
          "entry": 4655.0693,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4651.5,
              "high": 4659.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4647.495, planned_rr=2.0, touch=2026-04-07T06:40:00Z, outcome=sl_first",
      "entry": 4647.495,
      "stop": 4641.055,
      "target": 4660.375,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T06:40:00Z",
      "outcome_time": "2026-04-07T07:25:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4641.055,
          "impulse_high": 4653.935,
          "fib_entry_level": "50%",
          "entry": 4647.495000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4647.3,
              "high": 4657.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4645.949, planned_rr=3.0, touch=2026-04-07T06:35:00Z, outcome=sl_first",
      "entry": 4645.949,
      "stop": 4641.055,
      "target": 4660.633,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T06:35:00Z",
      "outcome_time": "2026-04-07T07:25:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4641.055,
          "impulse_high": 4653.935,
          "fib_entry_level": "62%",
          "entry": 4645.9494,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4655.007, planned_rr=2.0, touch=2026-04-07T08:10:00Z, outcome=tp_first",
      "entry": 4655.007,
      "stop": 4644.395,
      "target": 4676.232,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-07T08:10:00Z",
      "outcome_time": "2026-04-07T08:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4644.395,
          "impulse_high": 4665.62,
          "fib_entry_level": "50%",
          "entry": 4655.0075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4647.3,
              "high": 4657.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4652.461, planned_rr=3.0, touch=2026-04-07T08:05:00Z, outcome=tp_first",
      "entry": 4652.461,
      "stop": 4644.395,
      "target": 4676.657,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T08:05:00Z",
      "outcome_time": "2026-04-07T08:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4644.395,
          "impulse_high": 4665.62,
          "fib_entry_level": "62%",
          "entry": 4652.4605,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4647.3,
              "high": 4657.07,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4674.148, planned_rr=2.0, touch=2026-04-07T08:20:00Z, outcome=sl_first",
      "entry": 4674.148,
      "stop": 4657.07,
      "target": 4708.303,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T08:20:00Z",
      "outcome_time": "2026-04-07T10:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4657.07,
          "impulse_high": 4691.225,
          "fib_entry_level": "50%",
          "entry": 4674.1475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4665.62,
              "high": 4676.92,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4670.049, planned_rr=3.0, touch=2026-04-07T08:20:00Z, outcome=sl_first",
      "entry": 4670.049,
      "stop": 4657.07,
      "target": 4708.986,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T08:20:00Z",
      "outcome_time": "2026-04-07T10:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4657.07,
          "impulse_high": 4691.225,
          "fib_entry_level": "62%",
          "entry": 4670.0489,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4665.62,
              "high": 4676.92,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4640.518, planned_rr=3.0, touch=2026-04-07T11:20:00Z, outcome=tp_first",
      "entry": 4640.518,
      "stop": 4633.37,
      "target": 4661.961,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T11:20:00Z",
      "outcome_time": "2026-04-07T11:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4633.37,
          "impulse_high": 4652.18,
          "fib_entry_level": "62%",
          "entry": 4640.5178,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4655.387, planned_rr=2.0, touch=2026-04-07T11:35:00Z, outcome=sl_first",
      "entry": 4655.387,
      "stop": 4647.25,
      "target": 4671.662,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T11:35:00Z",
      "outcome_time": "2026-04-07T12:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4647.25,
          "impulse_high": 4663.525,
          "fib_entry_level": "50%",
          "entry": 4655.3875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4652.18,
              "high": 4656.31,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4651.49,
              "high": 4665.7,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4653.435, planned_rr=3.0, touch=2026-04-07T11:35:00Z, outcome=sl_first",
      "entry": 4653.435,
      "stop": 4647.25,
      "target": 4671.988,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T11:35:00Z",
      "outcome_time": "2026-04-07T12:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4647.25,
          "impulse_high": 4663.525,
          "fib_entry_level": "62%",
          "entry": 4653.4345,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4652.18,
              "high": 4656.31,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4651.49,
              "high": 4665.7,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4649.557, planned_rr=2.0, touch=2026-04-07T13:35:00Z, outcome=tp_first",
      "entry": 4649.557,
      "stop": 4663.49,
      "target": 4621.693,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-07T13:35:00Z",
      "outcome_time": "2026-04-07T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4635.625,
          "impulse_high": 4663.49,
          "fib_entry_level": "50%",
          "entry": 4649.5575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4637.195,
              "high": 4654.23,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4652.901, planned_rr=3.0, touch=2026-04-07T13:50:00Z, outcome=tp_first",
      "entry": 4652.901,
      "stop": 4663.49,
      "target": 4621.135,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T13:50:00Z",
      "outcome_time": "2026-04-07T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4635.625,
          "impulse_high": 4663.49,
          "fib_entry_level": "62%",
          "entry": 4652.9012999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4650.625,
              "high": 4663.08,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4637.195,
              "high": 4654.23,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4631.14, planned_rr=3.0, touch=2026-04-07T14:20:00Z, outcome=sl_first",
      "entry": 4631.14,
      "stop": 4645.55,
      "target": 4587.912,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T14:20:00Z",
      "outcome_time": "2026-04-07T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4607.63,
          "impulse_high": 4645.55,
          "fib_entry_level": "62%",
          "entry": 4631.1404,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4624.985, planned_rr=3.0, touch=2026-04-07T14:20:00Z, outcome=tp_first",
      "entry": 4624.985,
      "stop": 4609.84,
      "target": 4670.42,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T14:20:00Z",
      "outcome_time": "2026-04-07T17:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4609.84,
          "impulse_high": 4649.695,
          "fib_entry_level": "62%",
          "entry": 4624.9849,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4669.005, planned_rr=2.0, touch=2026-04-07T18:50:00Z, outcome=sl_first",
      "entry": 4669.005,
      "stop": 4680.38,
      "target": 4646.255,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T18:50:00Z",
      "outcome_time": "2026-04-07T19:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4657.63,
          "impulse_high": 4680.38,
          "fib_entry_level": "50%",
          "entry": 4669.005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4668.82,
              "high": 4677.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4671.735, planned_rr=3.0, touch=2026-04-07T18:50:00Z, outcome=sl_first",
      "entry": 4671.735,
      "stop": 4680.38,
      "target": 4645.8,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T18:50:00Z",
      "outcome_time": "2026-04-07T19:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4657.63,
          "impulse_high": 4680.38,
          "fib_entry_level": "62%",
          "entry": 4671.735,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4668.82,
              "high": 4677.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4698.413, planned_rr=3.0, touch=2026-04-07T19:50:00Z, outcome=tp_first",
      "entry": 4698.413,
      "stop": 4685.82,
      "target": 4736.193,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-07T19:50:00Z",
      "outcome_time": "2026-04-07T22:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4685.82,
          "impulse_high": 4718.96,
          "fib_entry_level": "62%",
          "entry": 4698.4132,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4790.87, planned_rr=2.0, touch=2026-04-07T22:50:00Z, outcome=tp_first",
      "entry": 4790.87,
      "stop": 4761.675,
      "target": 4849.26,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-07T22:50:00Z",
      "outcome_time": "2026-04-08T00:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4761.675,
          "impulse_high": 4820.065,
          "fib_entry_level": "50%",
          "entry": 4790.87,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4779.84,
              "high": 4801.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4823.568, planned_rr=2.0, touch=2026-04-07T23:50:00Z, outcome=sl_first",
      "entry": 4823.568,
      "stop": 4810.63,
      "target": 4849.443,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T23:50:00Z",
      "outcome_time": "2026-04-07T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4810.63,
          "impulse_high": 4836.505,
          "fib_entry_level": "50%",
          "entry": 4823.5675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4817.835,
              "high": 4830.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-07T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-07T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4820.463, planned_rr=3.0, touch=2026-04-07T23:50:00Z, outcome=sl_first",
      "entry": 4820.463,
      "stop": 4810.63,
      "target": 4849.96,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-07T23:50:00Z",
      "outcome_time": "2026-04-07T23:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-07T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-07",
        "timestamp": "2026-04-07T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4810.63,
          "impulse_high": 4836.505,
          "fib_entry_level": "62%",
          "entry": 4820.462500000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4817.835,
              "high": 4830.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.96,
            "PDL": 4607.63,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-08T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4829.143, planned_rr=3.0, touch=2026-04-08T06:50:00Z, outcome=sl_first",
      "entry": 4829.143,
      "stop": 4824.6,
      "target": 4842.772,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-08T06:50:00Z",
      "outcome_time": "2026-04-08T06:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4824.6,
          "impulse_high": 4836.555,
          "fib_entry_level": "62%",
          "entry": 4829.142900000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-08T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4789.252, planned_rr=3.0, touch=2026-04-08T13:30:00Z, outcome=sl_first",
      "entry": 4789.252,
      "stop": 4783.695,
      "target": 4805.925,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-08T13:30:00Z",
      "outcome_time": "2026-04-08T13:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4783.695,
          "impulse_high": 4798.32,
          "fib_entry_level": "62%",
          "entry": 4789.2525,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T18-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-04-08T18:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-04-08T18-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4727.135,
          "entry": 4720.27,
          "stop": 4727.135,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4718.66,
              "high": 4721.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T18-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-08T18:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4743.755, planned_rr=2.0, touch=2026-04-08T18:05:00Z, outcome=sl_first",
      "entry": 4743.755,
      "stop": 4727.135,
      "target": 4776.995,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-08T18:05:00Z",
      "outcome_time": "2026-04-08T18:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T18-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4727.135,
          "entry": 4743.755,
          "stop": 4727.135,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-08T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4731.012, planned_rr=2.0, touch=2026-04-08T18:20:00Z, outcome=tp_first",
      "entry": 4731.012,
      "stop": 4744.705,
      "target": 4703.627,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-08T18:20:00Z",
      "outcome_time": "2026-04-08T18:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4717.32,
          "impulse_high": 4744.705,
          "fib_entry_level": "50%",
          "entry": 4731.0125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4727.135,
              "high": 4744.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-08T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4718.677, planned_rr=3.0, touch=2026-04-08T18:35:00Z, outcome=sl_first",
      "entry": 4718.677,
      "stop": 4725.16,
      "target": 4699.229,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-08T18:35:00Z",
      "outcome_time": "2026-04-08T19:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.1,
          "impulse_high": 4725.16,
          "fib_entry_level": "62%",
          "entry": 4718.6772,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-08T19-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-08T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4714.631, planned_rr=3.0, touch=2026-04-08T22:10:00Z, outcome=sl_first",
      "entry": 4714.631,
      "stop": 4708.215,
      "target": 4733.88,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-08T22:10:00Z",
      "outcome_time": "2026-04-08T22:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-08T19-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-08",
        "timestamp": "2026-04-08T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.215,
          "impulse_high": 4725.1,
          "fib_entry_level": "62%",
          "entry": 4714.6313,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4858.215,
            "PDL": 4699.305,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4712.137, planned_rr=2.0, touch=2026-04-09T00:35:00Z, outcome=sl_first",
      "entry": 4712.137,
      "stop": 4705.705,
      "target": 4725.002,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T00:35:00Z",
      "outcome_time": "2026-04-09T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4705.705,
          "impulse_high": 4718.57,
          "fib_entry_level": "50%",
          "entry": 4712.1375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4710.594, planned_rr=3.0, touch=2026-04-09T00:50:00Z, outcome=sl_first",
      "entry": 4710.594,
      "stop": 4705.705,
      "target": 4725.26,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T00:50:00Z",
      "outcome_time": "2026-04-09T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4705.705,
          "impulse_high": 4718.57,
          "fib_entry_level": "62%",
          "entry": 4710.593699999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4710.985, planned_rr=2.0, touch=2026-04-09T01:05:00Z, outcome=tp_first",
      "entry": 4710.985,
      "stop": 4699.905,
      "target": 4733.145,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-09T01:05:00Z",
      "outcome_time": "2026-04-09T08:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4699.905,
          "impulse_high": 4722.065,
          "fib_entry_level": "50%",
          "entry": 4710.985,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4708.326, planned_rr=3.0, touch=2026-04-09T01:25:00Z, outcome=tp_first",
      "entry": 4708.326,
      "stop": 4699.905,
      "target": 4733.588,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-09T01:25:00Z",
      "outcome_time": "2026-04-09T10:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4699.905,
          "impulse_high": 4722.065,
          "fib_entry_level": "62%",
          "entry": 4708.3258,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4712.92, planned_rr=2.0, touch=2026-04-09T03:10:00Z, outcome=sl_first",
      "entry": 4712.92,
      "stop": 4704.11,
      "target": 4730.54,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T03:10:00Z",
      "outcome_time": "2026-04-09T06:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4704.11,
          "impulse_high": 4721.73,
          "fib_entry_level": "50%",
          "entry": 4712.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4710.806, planned_rr=3.0, touch=2026-04-09T03:15:00Z, outcome=sl_first",
      "entry": 4710.806,
      "stop": 4704.11,
      "target": 4730.892,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T03:15:00Z",
      "outcome_time": "2026-04-09T06:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4704.11,
          "impulse_high": 4721.73,
          "fib_entry_level": "62%",
          "entry": 4710.8056,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4706.32,
              "high": 4719.3,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4719.907, planned_rr=2.0, touch=2026-04-09T05:30:00Z, outcome=sl_first",
      "entry": 4719.907,
      "stop": 4713.24,
      "target": 4733.242,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T05:30:00Z",
      "outcome_time": "2026-04-09T05:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4713.24,
          "impulse_high": 4726.575,
          "fib_entry_level": "50%",
          "entry": 4719.907499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4718.307, planned_rr=3.0, touch=2026-04-09T05:30:00Z, outcome=sl_first",
      "entry": 4718.307,
      "stop": 4713.24,
      "target": 4733.509,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T05:30:00Z",
      "outcome_time": "2026-04-09T05:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4713.24,
          "impulse_high": 4726.575,
          "fib_entry_level": "62%",
          "entry": 4718.3072999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4719.622, planned_rr=2.0, touch=2026-04-09T07:05:00Z, outcome=sl_first",
      "entry": 4719.622,
      "stop": 4708.805,
      "target": 4741.257,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T07:05:00Z",
      "outcome_time": "2026-04-09T07:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4708.805,
          "impulse_high": 4730.44,
          "fib_entry_level": "50%",
          "entry": 4719.6224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4717.026, planned_rr=3.0, touch=2026-04-09T07:05:00Z, outcome=sl_first",
      "entry": 4717.026,
      "stop": 4708.805,
      "target": 4741.69,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T07:05:00Z",
      "outcome_time": "2026-04-09T07:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.805,
          "impulse_high": 4730.44,
          "fib_entry_level": "62%",
          "entry": 4717.0263,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4714.88,
              "high": 4717.04,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4720.267, planned_rr=2.0, touch=2026-04-09T07:35:00Z, outcome=tp_first",
      "entry": 4720.267,
      "stop": 4708.8,
      "target": 4743.202,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-09T07:35:00Z",
      "outcome_time": "2026-04-09T10:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4708.8,
          "impulse_high": 4731.735,
          "fib_entry_level": "50%",
          "entry": 4720.2675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4717.515, planned_rr=3.0, touch=2026-04-09T07:45:00Z, outcome=tp_first",
      "entry": 4717.515,
      "stop": 4708.8,
      "target": 4743.661,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-09T07:45:00Z",
      "outcome_time": "2026-04-09T10:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4708.8,
          "impulse_high": 4731.735,
          "fib_entry_level": "62%",
          "entry": 4717.5153,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4710.87,
              "high": 4723.8,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4747.692, planned_rr=2.0, touch=2026-04-09T13:05:00Z, outcome=tp_first",
      "entry": 4747.692,
      "stop": 4738.655,
      "target": 4765.767,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-09T13:05:00Z",
      "outcome_time": "2026-04-09T13:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4738.655,
          "impulse_high": 4756.73,
          "fib_entry_level": "50%",
          "entry": 4747.692499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4747.52,
              "high": 4751.945,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4760.64, planned_rr=3.0, touch=2026-04-09T13:35:00Z, outcome=sl_first",
      "entry": 4760.64,
      "stop": 4750.56,
      "target": 4790.878,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T13:35:00Z",
      "outcome_time": "2026-04-09T14:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4750.56,
          "impulse_high": 4777.085,
          "fib_entry_level": "62%",
          "entry": 4760.6395,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-09T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4785.863, planned_rr=3.0, touch=2026-04-09T15:45:00Z, outcome=sl_first",
      "entry": 4785.863,
      "stop": 4778.28,
      "target": 4808.612,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-09T15:45:00Z",
      "outcome_time": "2026-04-09T18:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-09T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-09",
        "timestamp": "2026-04-09T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4778.28,
          "impulse_high": 4798.235,
          "fib_entry_level": "62%",
          "entry": 4785.8629,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4801.39,
            "PDL": 4698.725,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4758.122, planned_rr=3.0, touch=2026-04-10T00:50:00Z, outcome=tp_first",
      "entry": 4758.122,
      "stop": 4754.825,
      "target": 4768.011,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-10T00:50:00Z",
      "outcome_time": "2026-04-10T01:30:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4754.825,
          "impulse_high": 4763.5,
          "fib_entry_level": "62%",
          "entry": 4758.1215,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4766.843, planned_rr=3.0, touch=2026-04-10T01:45:00Z, outcome=sl_first",
      "entry": 4766.843,
      "stop": 4760.36,
      "target": 4786.291,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T01:45:00Z",
      "outcome_time": "2026-04-10T01:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4760.36,
          "impulse_high": 4777.42,
          "fib_entry_level": "62%",
          "entry": 4766.842799999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4762.2, planned_rr=2.0, touch=2026-04-10T04:40:00Z, outcome=sl_first",
      "entry": 4762.2,
      "stop": 4755.74,
      "target": 4775.12,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T04:40:00Z",
      "outcome_time": "2026-04-10T06:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4755.74,
          "impulse_high": 4768.66,
          "fib_entry_level": "50%",
          "entry": 4762.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4762.11,
              "high": 4764.09,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4760.65, planned_rr=3.0, touch=2026-04-10T04:55:00Z, outcome=sl_first",
      "entry": 4760.65,
      "stop": 4755.74,
      "target": 4775.378,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T04:55:00Z",
      "outcome_time": "2026-04-10T06:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4755.74,
          "impulse_high": 4768.66,
          "fib_entry_level": "62%",
          "entry": 4760.6496,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4750.065, planned_rr=3.0, touch=2026-04-10T07:50:00Z, outcome=sl_first",
      "entry": 4750.065,
      "stop": 4746.265,
      "target": 4761.465,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T07:50:00Z",
      "outcome_time": "2026-04-10T08:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4746.265,
          "impulse_high": 4756.265,
          "fib_entry_level": "62%",
          "entry": 4750.0650000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4743.078, planned_rr=3.0, touch=2026-04-10T09:05:00Z, outcome=tp_first",
      "entry": 4743.078,
      "stop": 4740.695,
      "target": 4750.225,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-10T09:05:00Z",
      "outcome_time": "2026-04-10T09:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4740.695,
          "impulse_high": 4746.965,
          "fib_entry_level": "62%",
          "entry": 4743.0776,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4753.665, planned_rr=2.0, touch=2026-04-10T10:20:00Z, outcome=tp_first",
      "entry": 4753.665,
      "stop": 4746.485,
      "target": 4768.025,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-10T10:20:00Z",
      "outcome_time": "2026-04-10T11:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4746.485,
          "impulse_high": 4760.845,
          "fib_entry_level": "50%",
          "entry": 4753.665,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4753.41,
              "high": 4753.925,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4753.38,
              "high": 4759.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4769.88, planned_rr=3.0, touch=2026-04-10T12:40:00Z, outcome=tp_first",
      "entry": 4769.88,
      "stop": 4762.08,
      "target": 4793.278,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-10T12:40:00Z",
      "outcome_time": "2026-04-10T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4762.08,
          "impulse_high": 4782.605,
          "fib_entry_level": "62%",
          "entry": 4769.8795,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4759.845,
              "high": 4771.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4784.301, planned_rr=3.0, touch=2026-04-10T14:40:00Z, outcome=sl_first",
      "entry": 4784.301,
      "stop": 4779.015,
      "target": 4800.158,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T14:40:00Z",
      "outcome_time": "2026-04-10T14:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4779.015,
          "impulse_high": 4792.925,
          "fib_entry_level": "62%",
          "entry": 4784.3008,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-10T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-10T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4747.964, planned_rr=3.0, touch=2026-04-10T20:35:00Z, outcome=sl_first",
      "entry": 4747.964,
      "stop": 4745.15,
      "target": 4756.406,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-10T20:35:00Z",
      "outcome_time": "2026-04-12T22:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-10T20-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-10",
        "timestamp": "2026-04-10T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4745.15,
          "impulse_high": 4752.555,
          "fib_entry_level": "62%",
          "entry": 4747.9639,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-12T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-12T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4673.404, planned_rr=3.0, touch=2026-04-12T22:05:00Z, outcome=sl_first",
      "entry": 4673.404,
      "stop": 4666.045,
      "target": 4695.48,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-12T22:05:00Z",
      "outcome_time": "2026-04-12T22:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-12T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-12",
        "timestamp": "2026-04-12T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4666.045,
          "impulse_high": 4685.41,
          "fib_entry_level": "62%",
          "entry": 4673.4037,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-12T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-12T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4650.708, planned_rr=3.0, touch=2026-04-12T23:15:00Z, outcome=sl_first",
      "entry": 4650.708,
      "stop": 4645.43,
      "target": 4666.543,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-12T23:15:00Z",
      "outcome_time": "2026-04-12T23:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-12T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-12",
        "timestamp": "2026-04-12T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4645.43,
          "impulse_high": 4659.32,
          "fib_entry_level": "62%",
          "entry": 4650.7082,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4794.98,
            "PDL": 4730.74,
            "PWH": 4858.215,
            "PWL": 4600.85
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4714.417, planned_rr=3.0, touch=2026-04-13T11:35:00Z, outcome=sl_first",
      "entry": 4714.417,
      "stop": 4711.795,
      "target": 4722.283,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T11:35:00Z",
      "outcome_time": "2026-04-13T11:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T10-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4711.795,
          "impulse_high": 4718.695,
          "fib_entry_level": "62%",
          "entry": 4714.417,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4710.173, planned_rr=3.0, touch=2026-04-13T12:05:00Z, outcome=tp_first",
      "entry": 4710.173,
      "stop": 4703.905,
      "target": 4728.977,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-13T12:05:00Z",
      "outcome_time": "2026-04-13T13:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4703.905,
          "impulse_high": 4720.4,
          "fib_entry_level": "62%",
          "entry": 4710.1731,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4720.395, planned_rr=2.0, touch=2026-04-13T12:50:00Z, outcome=tp_first",
      "entry": 4720.395,
      "stop": 4715.445,
      "target": 4730.295,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-13T12:50:00Z",
      "outcome_time": "2026-04-13T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4715.445,
          "impulse_high": 4725.345,
          "fib_entry_level": "50%",
          "entry": 4720.395,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4716.59,
              "high": 4722.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4719.207, planned_rr=3.0, touch=2026-04-13T14:15:00Z, outcome=sl_first",
      "entry": 4719.207,
      "stop": 4715.445,
      "target": 4730.493,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T14:15:00Z",
      "outcome_time": "2026-04-13T14:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4715.445,
          "impulse_high": 4725.345,
          "fib_entry_level": "62%",
          "entry": 4719.207,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4718.695,
              "high": 4720.075,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4716.59,
              "high": 4722.605,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4727.805, planned_rr=3.0, touch=2026-04-13T13:05:00Z, outcome=sl_first",
      "entry": 4727.805,
      "stop": 4722.605,
      "target": 4743.406,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T13:05:00Z",
      "outcome_time": "2026-04-13T13:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4722.605,
          "impulse_high": 4736.29,
          "fib_entry_level": "62%",
          "entry": 4727.8053,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4725.345,
              "high": 4728.96,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4726.548, planned_rr=2.0, touch=2026-04-13T16:20:00Z, outcome=tp_first",
      "entry": 4726.548,
      "stop": 4718.885,
      "target": 4741.873,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-13T16:20:00Z",
      "outcome_time": "2026-04-13T16:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4718.885,
          "impulse_high": 4734.21,
          "fib_entry_level": "50%",
          "entry": 4726.547500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4720.86,
              "high": 4728.715,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4724.708, planned_rr=3.0, touch=2026-04-13T16:20:00Z, outcome=tp_first",
      "entry": 4724.708,
      "stop": 4718.885,
      "target": 4742.179,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-13T16:20:00Z",
      "outcome_time": "2026-04-13T16:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T16-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4718.885,
          "impulse_high": 4734.21,
          "fib_entry_level": "62%",
          "entry": 4724.7085,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4720.86,
              "high": 4728.715,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4739.99, planned_rr=2.0, touch=2026-04-13T17:45:00Z, outcome=sl_first",
      "entry": 4739.99,
      "stop": 4729.775,
      "target": 4760.42,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T17:45:00Z",
      "outcome_time": "2026-04-13T17:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4729.775,
          "impulse_high": 4750.205,
          "fib_entry_level": "50%",
          "entry": 4739.99,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4738.645,
              "high": 4742.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4737.538, planned_rr=3.0, touch=2026-04-13T17:45:00Z, outcome=sl_first",
      "entry": 4737.538,
      "stop": 4729.775,
      "target": 4760.829,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T17:45:00Z",
      "outcome_time": "2026-04-13T17:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4729.775,
          "impulse_high": 4750.205,
          "fib_entry_level": "62%",
          "entry": 4737.5383999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4735.88, planned_rr=2.0, touch=2026-04-13T17:50:00Z, outcome=sl_first",
      "entry": 4735.88,
      "stop": 4744.27,
      "target": 4719.1,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T17:50:00Z",
      "outcome_time": "2026-04-13T19:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4727.49,
          "impulse_high": 4744.27,
          "fib_entry_level": "50%",
          "entry": 4735.88,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4733.13,
              "high": 4742.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4737.894, planned_rr=3.0, touch=2026-04-13T17:50:00Z, outcome=sl_first",
      "entry": 4737.894,
      "stop": 4744.27,
      "target": 4718.764,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T17:50:00Z",
      "outcome_time": "2026-04-13T19:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4727.49,
          "impulse_high": 4744.27,
          "fib_entry_level": "62%",
          "entry": 4737.8936,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4733.13,
              "high": 4742.745,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4754.555, planned_rr=2.0, touch=2026-04-13T22:50:00Z, outcome=tp_first",
      "entry": 4754.555,
      "stop": 4749.31,
      "target": 4765.045,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-13T22:50:00Z",
      "outcome_time": "2026-04-13T23:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4749.31,
          "impulse_high": 4759.8,
          "fib_entry_level": "50%",
          "entry": 4754.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4750.55,
              "high": 4758.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4753.296, planned_rr=3.0, touch=2026-04-13T22:50:00Z, outcome=tp_first",
      "entry": 4753.296,
      "stop": 4749.31,
      "target": 4765.255,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-13T22:50:00Z",
      "outcome_time": "2026-04-13T23:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4749.31,
          "impulse_high": 4759.8,
          "fib_entry_level": "62%",
          "entry": 4753.296200000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4750.55,
              "high": 4758.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-13T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-13T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4760.239, planned_rr=3.0, touch=2026-04-13T23:20:00Z, outcome=sl_first",
      "entry": 4760.239,
      "stop": 4763.665,
      "target": 4749.962,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-13T23:20:00Z",
      "outcome_time": "2026-04-14T00:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-13T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-13",
        "timestamp": "2026-04-13T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4754.65,
          "impulse_high": 4763.665,
          "fib_entry_level": "62%",
          "entry": 4760.2393,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4750.205,
            "PDL": 4644.465,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4768.75, planned_rr=2.0, touch=2026-04-14T00:35:00Z, outcome=sl_first",
      "entry": 4768.75,
      "stop": 4761.425,
      "target": 4783.4,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T00:35:00Z",
      "outcome_time": "2026-04-14T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4761.425,
          "impulse_high": 4776.075,
          "fib_entry_level": "50%",
          "entry": 4768.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4768.625,
              "high": 4772.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4766.992, planned_rr=3.0, touch=2026-04-14T00:35:00Z, outcome=sl_first",
      "entry": 4766.992,
      "stop": 4761.425,
      "target": 4783.693,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T00:35:00Z",
      "outcome_time": "2026-04-14T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4761.425,
          "impulse_high": 4776.075,
          "fib_entry_level": "62%",
          "entry": 4766.992,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4769.985, planned_rr=2.0, touch=2026-04-14T01:05:00Z, outcome=sl_first",
      "entry": 4769.985,
      "stop": 4762.585,
      "target": 4784.785,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T01:05:00Z",
      "outcome_time": "2026-04-14T01:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4762.585,
          "impulse_high": 4777.385,
          "fib_entry_level": "50%",
          "entry": 4769.985000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4768.625,
              "high": 4772.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4768.209, planned_rr=3.0, touch=2026-04-14T01:05:00Z, outcome=sl_first",
      "entry": 4768.209,
      "stop": 4762.585,
      "target": 4785.081,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T01:05:00Z",
      "outcome_time": "2026-04-14T01:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4762.585,
          "impulse_high": 4777.385,
          "fib_entry_level": "62%",
          "entry": 4768.209,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4767.55,
              "high": 4768.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4774.204, planned_rr=3.0, touch=2026-04-14T01:25:00Z, outcome=tp_first",
      "entry": 4774.204,
      "stop": 4776.9,
      "target": 4766.116,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T01:25:00Z",
      "outcome_time": "2026-04-14T01:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4769.805,
          "impulse_high": 4776.9,
          "fib_entry_level": "62%",
          "entry": 4774.2038999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4769.369, planned_rr=3.0, touch=2026-04-14T02:05:00Z, outcome=sl_first",
      "entry": 4769.369,
      "stop": 4774.015,
      "target": 4755.433,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T02:05:00Z",
      "outcome_time": "2026-04-14T02:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4761.79,
          "impulse_high": 4774.015,
          "fib_entry_level": "62%",
          "entry": 4769.3695,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4772.21, planned_rr=2.0, touch=2026-04-14T03:05:00Z, outcome=sl_first",
      "entry": 4772.21,
      "stop": 4775.675,
      "target": 4765.28,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T03:05:00Z",
      "outcome_time": "2026-04-14T04:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4768.745,
          "impulse_high": 4775.675,
          "fib_entry_level": "50%",
          "entry": 4772.21,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4771.43,
              "high": 4772.415,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4773.042, planned_rr=3.0, touch=2026-04-14T03:05:00Z, outcome=sl_first",
      "entry": 4773.042,
      "stop": 4775.675,
      "target": 4765.141,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T03:05:00Z",
      "outcome_time": "2026-04-14T04:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4768.745,
          "impulse_high": 4775.675,
          "fib_entry_level": "62%",
          "entry": 4773.0416000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4771.846, planned_rr=3.0, touch=2026-04-14T04:35:00Z, outcome=sl_first",
      "entry": 4771.846,
      "stop": 4768.635,
      "target": 4781.479,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T04:35:00Z",
      "outcome_time": "2026-04-14T05:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4768.635,
          "impulse_high": 4777.085,
          "fib_entry_level": "62%",
          "entry": 4771.8460000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4768.847, planned_rr=2.0, touch=2026-04-14T05:05:00Z, outcome=tp_first",
      "entry": 4768.847,
      "stop": 4774.32,
      "target": 4757.903,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-14T05:05:00Z",
      "outcome_time": "2026-04-14T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4763.375,
          "impulse_high": 4774.32,
          "fib_entry_level": "50%",
          "entry": 4768.8475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4768.155,
              "high": 4772.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4770.161, planned_rr=3.0, touch=2026-04-14T05:05:00Z, outcome=sl_first",
      "entry": 4770.161,
      "stop": 4774.32,
      "target": 4757.684,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T05:05:00Z",
      "outcome_time": "2026-04-14T06:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4763.375,
          "impulse_high": 4774.32,
          "fib_entry_level": "62%",
          "entry": 4770.1609,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4768.155,
              "high": 4772.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4763.79, planned_rr=3.0, touch=2026-04-14T06:15:00Z, outcome=tp_first",
      "entry": 4763.79,
      "stop": 4760.015,
      "target": 4775.116,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T06:15:00Z",
      "outcome_time": "2026-04-14T06:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4760.015,
          "impulse_high": 4769.95,
          "fib_entry_level": "62%",
          "entry": 4763.790300000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4775.948, planned_rr=2.0, touch=2026-04-14T06:50:00Z, outcome=tp_first",
      "entry": 4775.948,
      "stop": 4768.93,
      "target": 4789.983,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-14T06:50:00Z",
      "outcome_time": "2026-04-14T07:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4768.93,
          "impulse_high": 4782.965,
          "fib_entry_level": "50%",
          "entry": 4775.9475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4770.575,
              "high": 4780.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4774.263, planned_rr=3.0, touch=2026-04-14T06:50:00Z, outcome=tp_first",
      "entry": 4774.263,
      "stop": 4768.93,
      "target": 4790.263,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T06:50:00Z",
      "outcome_time": "2026-04-14T07:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4768.93,
          "impulse_high": 4782.965,
          "fib_entry_level": "62%",
          "entry": 4774.2633000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4770.575,
              "high": 4780.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4786.933, planned_rr=3.0, touch=2026-04-14T07:05:00Z, outcome=sl_first",
      "entry": 4786.933,
      "stop": 4780.99,
      "target": 4804.763,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T07:05:00Z",
      "outcome_time": "2026-04-14T07:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4780.99,
          "impulse_high": 4796.63,
          "fib_entry_level": "62%",
          "entry": 4786.9331999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4782.741, planned_rr=3.0, touch=2026-04-14T07:20:00Z, outcome=tp_first",
      "entry": 4782.741,
      "stop": 4791.865,
      "target": 4755.37,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T07:20:00Z",
      "outcome_time": "2026-04-14T10:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4767.855,
          "impulse_high": 4791.865,
          "fib_entry_level": "62%",
          "entry": 4782.7411999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4770.853, planned_rr=3.0, touch=2026-04-14T11:05:00Z, outcome=tp_first",
      "entry": 4770.853,
      "stop": 4767.03,
      "target": 4782.321,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T11:05:00Z",
      "outcome_time": "2026-04-14T11:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4767.03,
          "impulse_high": 4777.09,
          "fib_entry_level": "62%",
          "entry": 4770.8528,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4789.239, planned_rr=3.0, touch=2026-04-14T13:35:00Z, outcome=tp_first",
      "entry": 4789.239,
      "stop": 4780.32,
      "target": 4815.994,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T13:35:00Z",
      "outcome_time": "2026-04-14T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4780.32,
          "impulse_high": 4803.79,
          "fib_entry_level": "62%",
          "entry": 4789.2386,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4801.018, planned_rr=3.0, touch=2026-04-14T14:20:00Z, outcome=sl_first",
      "entry": 4801.018,
      "stop": 4794.97,
      "target": 4819.161,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T14:20:00Z",
      "outcome_time": "2026-04-14T15:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4794.97,
          "impulse_high": 4810.885,
          "fib_entry_level": "62%",
          "entry": 4801.0177,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4833.525, planned_rr=2.0, touch=2026-04-14T17:35:00Z, outcome=tp_first",
      "entry": 4833.525,
      "stop": 4825.345,
      "target": 4849.885,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-14T17:35:00Z",
      "outcome_time": "2026-04-14T22:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4825.345,
          "impulse_high": 4841.705,
          "fib_entry_level": "50%",
          "entry": 4833.525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4832.065,
              "high": 4834.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4831.562, planned_rr=3.0, touch=2026-04-14T17:35:00Z, outcome=tp_first",
      "entry": 4831.562,
      "stop": 4825.345,
      "target": 4850.212,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-14T17:35:00Z",
      "outcome_time": "2026-04-14T22:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4825.345,
          "impulse_high": 4841.705,
          "fib_entry_level": "62%",
          "entry": 4831.5618,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4824.95,
              "high": 4832.065,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4839.222, planned_rr=2.0, touch=2026-04-14T23:35:00Z, outcome=sl_first",
      "entry": 4839.222,
      "stop": 4835.38,
      "target": 4846.907,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T23:35:00Z",
      "outcome_time": "2026-04-15T00:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4835.38,
          "impulse_high": 4843.065,
          "fib_entry_level": "50%",
          "entry": 4839.2225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4837.695,
              "high": 4842.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-14T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-14T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4838.3, planned_rr=3.0, touch=2026-04-14T23:40:00Z, outcome=sl_first",
      "entry": 4838.3,
      "stop": 4835.38,
      "target": 4847.061,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-14T23:40:00Z",
      "outcome_time": "2026-04-15T00:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-14T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-14",
        "timestamp": "2026-04-14T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4835.38,
          "impulse_high": 4843.065,
          "fib_entry_level": "62%",
          "entry": 4838.3003,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4837.695,
              "high": 4842.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4846.37,
            "PDL": 4745.84,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4832.409, planned_rr=3.0, touch=2026-04-15T00:55:00Z, outcome=sl_first",
      "entry": 4832.409,
      "stop": 4829.17,
      "target": 4842.128,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T00:55:00Z",
      "outcome_time": "2026-04-15T01:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4829.17,
          "impulse_high": 4837.695,
          "fib_entry_level": "62%",
          "entry": 4832.4095,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4840.555, planned_rr=2.0, touch=2026-04-15T01:05:00Z, outcome=tp_first",
      "entry": 4840.555,
      "stop": 4828.335,
      "target": 4864.995,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-15T01:05:00Z",
      "outcome_time": "2026-04-15T01:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4828.335,
          "impulse_high": 4852.775,
          "fib_entry_level": "50%",
          "entry": 4840.555,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4837.695,
              "high": 4842.08,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4837.622, planned_rr=3.0, touch=2026-04-15T01:05:00Z, outcome=tp_first",
      "entry": 4837.622,
      "stop": 4828.335,
      "target": 4865.484,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-15T01:05:00Z",
      "outcome_time": "2026-04-15T01:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4828.335,
          "impulse_high": 4852.775,
          "fib_entry_level": "62%",
          "entry": 4837.6222,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T06-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-15T06:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Long entry=4811.625, planned_rr=2.0, touch=2026-04-15T06:55:00Z, outcome=ambiguous_same_bar",
      "entry": 4811.625,
      "stop": 4811.31,
      "target": 4812.255,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-04-15T06:55:00Z",
      "outcome_time": "2026-04-15T06:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T06-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4811.31,
          "entry": 4811.625,
          "stop": 4811.31,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T07-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-15T07:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4815.71, planned_rr=2.0, touch=2026-04-15T07:10:00Z, outcome=sl_first",
      "entry": 4815.71,
      "stop": 4804.05,
      "target": 4839.03,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T07:10:00Z",
      "outcome_time": "2026-04-15T09:10:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T07-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4804.05,
          "entry": 4815.71,
          "stop": 4804.05,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4814.423, planned_rr=3.0, touch=2026-04-15T08:50:00Z, outcome=sl_first",
      "entry": 4814.423,
      "stop": 4809.855,
      "target": 4828.125,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T08:50:00Z",
      "outcome_time": "2026-04-15T09:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4809.855,
          "impulse_high": 4821.875,
          "fib_entry_level": "62%",
          "entry": 4814.4226,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4808.59, planned_rr=3.0, touch=2026-04-15T12:00:00Z, outcome=tp_first",
      "entry": 4808.59,
      "stop": 4804.475,
      "target": 4820.937,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-15T12:00:00Z",
      "outcome_time": "2026-04-15T13:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4804.475,
          "impulse_high": 4815.305,
          "fib_entry_level": "62%",
          "entry": 4808.5904,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4816.158, planned_rr=2.0, touch=2026-04-15T13:20:00Z, outcome=tp_first",
      "entry": 4816.158,
      "stop": 4810.185,
      "target": 4828.102,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-15T13:20:00Z",
      "outcome_time": "2026-04-15T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4810.185,
          "impulse_high": 4822.13,
          "fib_entry_level": "50%",
          "entry": 4816.1575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4815.935,
              "high": 4825.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4814.724, planned_rr=3.0, touch=2026-04-15T13:20:00Z, outcome=tp_first",
      "entry": 4814.724,
      "stop": 4810.185,
      "target": 4828.341,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-15T13:20:00Z",
      "outcome_time": "2026-04-15T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4810.185,
          "impulse_high": 4822.13,
          "fib_entry_level": "62%",
          "entry": 4814.7241,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4825.16, planned_rr=2.0, touch=2026-04-15T13:50:00Z, outcome=sl_first",
      "entry": 4825.16,
      "stop": 4820.01,
      "target": 4835.46,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T13:50:00Z",
      "outcome_time": "2026-04-15T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4820.01,
          "impulse_high": 4830.31,
          "fib_entry_level": "50%",
          "entry": 4825.16,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4815.935,
              "high": 4825.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4823.924, planned_rr=3.0, touch=2026-04-15T13:50:00Z, outcome=sl_first",
      "entry": 4823.924,
      "stop": 4820.01,
      "target": 4835.666,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T13:50:00Z",
      "outcome_time": "2026-04-15T14:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4820.01,
          "impulse_high": 4830.31,
          "fib_entry_level": "62%",
          "entry": 4823.924,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4815.935,
              "high": 4825.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4804.362, planned_rr=3.0, touch=2026-04-15T16:05:00Z, outcome=sl_first",
      "entry": 4804.362,
      "stop": 4800.49,
      "target": 4815.979,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-15T16:05:00Z",
      "outcome_time": "2026-04-15T16:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4800.49,
          "impulse_high": 4810.68,
          "fib_entry_level": "62%",
          "entry": 4804.3622,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4819.51, planned_rr=2.0, touch=2026-04-16T01:35:00Z, outcome=sl_first",
      "entry": 4819.51,
      "stop": 4814.605,
      "target": 4829.32,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T01:35:00Z",
      "outcome_time": "2026-04-16T01:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4814.605,
          "impulse_high": 4824.415,
          "fib_entry_level": "50%",
          "entry": 4819.51,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4815.935,
              "high": 4822.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-15T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-15T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4818.333, planned_rr=3.0, touch=2026-04-16T01:35:00Z, outcome=sl_first",
      "entry": 4818.333,
      "stop": 4814.605,
      "target": 4829.516,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T01:35:00Z",
      "outcome_time": "2026-04-16T01:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-15T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-15",
        "timestamp": "2026-04-15T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4814.605,
          "impulse_high": 4824.415,
          "fib_entry_level": "62%",
          "entry": 4818.3328,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4815.935,
              "high": 4822.11,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4871.38,
            "PDL": 4786.08,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4827.233, planned_rr=2.0, touch=2026-04-16T00:20:00Z, outcome=sl_first",
      "entry": 4827.233,
      "stop": 4823.275,
      "target": 4835.148,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T00:20:00Z",
      "outcome_time": "2026-04-16T00:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4823.275,
          "impulse_high": 4831.19,
          "fib_entry_level": "50%",
          "entry": 4827.2325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4822.525,
              "high": 4831.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4826.283, planned_rr=3.0, touch=2026-04-16T00:20:00Z, outcome=sl_first",
      "entry": 4826.283,
      "stop": 4823.275,
      "target": 4835.306,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T00:20:00Z",
      "outcome_time": "2026-04-16T00:25:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4823.275,
          "impulse_high": 4831.19,
          "fib_entry_level": "62%",
          "entry": 4826.2827,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4822.525,
              "high": 4831.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4829.078, planned_rr=2.0, touch=2026-04-16T00:35:00Z, outcome=sl_first",
      "entry": 4829.078,
      "stop": 4820.345,
      "target": 4846.543,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T00:35:00Z",
      "outcome_time": "2026-04-16T01:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4820.345,
          "impulse_high": 4837.81,
          "fib_entry_level": "50%",
          "entry": 4829.0775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4822.525,
              "high": 4831.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4826.982, planned_rr=3.0, touch=2026-04-16T00:35:00Z, outcome=sl_first",
      "entry": 4826.982,
      "stop": 4820.345,
      "target": 4846.892,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T00:35:00Z",
      "outcome_time": "2026-04-16T01:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4820.345,
          "impulse_high": 4837.81,
          "fib_entry_level": "62%",
          "entry": 4826.9817,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4822.525,
              "high": 4831.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4818.866, planned_rr=3.0, touch=2026-04-16T06:35:00Z, outcome=tp_first",
      "entry": 4818.866,
      "stop": 4814.99,
      "target": 4830.494,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-16T06:35:00Z",
      "outcome_time": "2026-04-16T06:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4814.99,
          "impulse_high": 4825.19,
          "fib_entry_level": "62%",
          "entry": 4818.866,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4795.417, planned_rr=2.0, touch=2026-04-16T14:05:00Z, outcome=sl_first",
      "entry": 4795.417,
      "stop": 4785.215,
      "target": 4815.822,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T14:05:00Z",
      "outcome_time": "2026-04-16T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4785.215,
          "impulse_high": 4805.62,
          "fib_entry_level": "50%",
          "entry": 4795.4175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4793.48,
              "high": 4801.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4792.969, planned_rr=3.0, touch=2026-04-16T14:05:00Z, outcome=sl_first",
      "entry": 4792.969,
      "stop": 4785.215,
      "target": 4816.231,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T14:05:00Z",
      "outcome_time": "2026-04-16T14:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4785.215,
          "impulse_high": 4805.62,
          "fib_entry_level": "62%",
          "entry": 4792.9689,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4800.738, planned_rr=2.0, touch=2026-04-16T15:05:00Z, outcome=sl_first",
      "entry": 4800.738,
      "stop": 4788.43,
      "target": 4825.352,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T15:05:00Z",
      "outcome_time": "2026-04-16T16:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4788.43,
          "impulse_high": 4813.045,
          "fib_entry_level": "50%",
          "entry": 4800.7375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4793.48,
              "high": 4801.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4797.784, planned_rr=3.0, touch=2026-04-16T16:25:00Z, outcome=sl_first",
      "entry": 4797.784,
      "stop": 4788.43,
      "target": 4825.845,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T16:25:00Z",
      "outcome_time": "2026-04-16T16:30:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T15-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4788.43,
          "impulse_high": 4813.045,
          "fib_entry_level": "62%",
          "entry": 4797.7837,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4793.48,
              "high": 4801.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-16T19-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-16T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4793.482, planned_rr=3.0, touch=2026-04-16T19:35:00Z, outcome=sl_first",
      "entry": 4793.482,
      "stop": 4790.75,
      "target": 4801.679,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-16T19:35:00Z",
      "outcome_time": "2026-04-16T19:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-16T19-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-16",
        "timestamp": "2026-04-16T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4790.75,
          "impulse_high": 4797.94,
          "fib_entry_level": "62%",
          "entry": 4793.4821999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4838.56,
            "PDL": 4772.575,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-17T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4794.98, planned_rr=3.0, touch=2026-04-17T00:40:00Z, outcome=sl_first",
      "entry": 4794.98,
      "stop": 4792.62,
      "target": 4802.059,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-17T00:40:00Z",
      "outcome_time": "2026-04-17T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4792.62,
          "impulse_high": 4798.83,
          "fib_entry_level": "62%",
          "entry": 4794.9798,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T01-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-04-17T01:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4792.278, planned_rr=2.0, touch=2026-04-17T02:00:00Z, outcome=tp_first",
      "entry": 4792.278,
      "stop": 4767.845,
      "target": 4841.142,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-17T02:00:00Z",
      "outcome_time": "2026-04-17T12:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T01-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4767.845,
          "entry": 4792.2775,
          "stop": 4767.845,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4791.935,
              "high": 4792.62,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4793.025,
              "high": 4793.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T01-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-17T01:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4777.705, planned_rr=2.0, touch=2026-04-17T01:35:00Z, outcome=tp_first",
      "entry": 4777.705,
      "stop": 4767.845,
      "target": 4797.425,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-17T01:35:00Z",
      "outcome_time": "2026-04-17T03:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T01-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4767.845,
          "entry": 4777.705,
          "stop": 4767.845,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-17T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4790.753, planned_rr=2.0, touch=2026-04-17T08:40:00Z, outcome=sl_first",
      "entry": 4790.753,
      "stop": 4784.46,
      "target": 4803.338,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-17T08:40:00Z",
      "outcome_time": "2026-04-17T10:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4784.46,
          "impulse_high": 4797.045,
          "fib_entry_level": "50%",
          "entry": 4790.7525000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4787.44,
              "high": 4791.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-17T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4789.242, planned_rr=3.0, touch=2026-04-17T08:35:00Z, outcome=sl_first",
      "entry": 4789.242,
      "stop": 4784.46,
      "target": 4803.589,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-17T08:35:00Z",
      "outcome_time": "2026-04-17T10:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4784.46,
          "impulse_high": 4797.045,
          "fib_entry_level": "62%",
          "entry": 4789.2423,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4787.44,
              "high": 4791.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-17T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4856.432, planned_rr=3.0, touch=2026-04-17T13:05:00Z, outcome=sl_first",
      "entry": 4856.432,
      "stop": 4834.915,
      "target": 4920.985,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-17T13:05:00Z",
      "outcome_time": "2026-04-17T20:40:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4834.915,
          "impulse_high": 4891.54,
          "fib_entry_level": "62%",
          "entry": 4856.4325,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-17T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-17T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4863.548, planned_rr=3.0, touch=2026-04-17T13:50:00Z, outcome=sl_first",
      "entry": 4863.548,
      "stop": 4852.165,
      "target": 4897.697,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-17T13:50:00Z",
      "outcome_time": "2026-04-17T20:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-17T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-17",
        "timestamp": "2026-04-17T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4852.165,
          "impulse_high": 4882.12,
          "fib_entry_level": "62%",
          "entry": 4863.5479,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-19T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-19T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4780.051, planned_rr=3.0, touch=2026-04-19T22:05:00Z, outcome=sl_first",
      "entry": 4780.051,
      "stop": 4771.055,
      "target": 4807.041,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-19T22:05:00Z",
      "outcome_time": "2026-04-19T22:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-19T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-19",
        "timestamp": "2026-04-19T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4771.055,
          "impulse_high": 4794.73,
          "fib_entry_level": "62%",
          "entry": 4780.0515,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-19T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-19T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4759.855, planned_rr=2.0, touch=2026-04-19T23:35:00Z, outcome=sl_first",
      "entry": 4759.855,
      "stop": 4773.685,
      "target": 4732.195,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-19T23:35:00Z",
      "outcome_time": "2026-04-20T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-19T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-19",
        "timestamp": "2026-04-19T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4746.025,
          "impulse_high": 4773.685,
          "fib_entry_level": "50%",
          "entry": 4759.855,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4755.525,
              "high": 4768.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-19T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-19T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4763.174, planned_rr=3.0, touch=2026-04-19T23:35:00Z, outcome=sl_first",
      "entry": 4763.174,
      "stop": 4773.685,
      "target": 4731.642,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-19T23:35:00Z",
      "outcome_time": "2026-04-20T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-19T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-19",
        "timestamp": "2026-04-19T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4746.025,
          "impulse_high": 4773.685,
          "fib_entry_level": "62%",
          "entry": 4763.1742,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4755.525,
              "high": 4768.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4891.54,
            "PDL": 4767.845,
            "PWH": 4891.54,
            "PWL": 4644.465
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4785.727, planned_rr=3.0, touch=2026-04-20T05:50:00Z, outcome=tp_first",
      "entry": 4785.727,
      "stop": 4781.095,
      "target": 4799.624,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-20T05:50:00Z",
      "outcome_time": "2026-04-20T07:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4781.095,
          "impulse_high": 4793.285,
          "fib_entry_level": "62%",
          "entry": 4785.7272,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4791.798, planned_rr=2.0, touch=2026-04-20T11:05:00Z, outcome=sl_first",
      "entry": 4791.798,
      "stop": 4796.43,
      "target": 4782.533,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T11:05:00Z",
      "outcome_time": "2026-04-20T11:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4787.165,
          "impulse_high": 4796.43,
          "fib_entry_level": "50%",
          "entry": 4791.797500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4791.18,
              "high": 4794.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4792.909, planned_rr=3.0, touch=2026-04-20T11:05:00Z, outcome=sl_first",
      "entry": 4792.909,
      "stop": 4796.43,
      "target": 4782.347,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T11:05:00Z",
      "outcome_time": "2026-04-20T11:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4787.165,
          "impulse_high": 4796.43,
          "fib_entry_level": "62%",
          "entry": 4792.9093,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4791.18,
              "high": 4794.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4802.892, planned_rr=2.0, touch=2026-04-20T11:50:00Z, outcome=tp_first",
      "entry": 4802.892,
      "stop": 4794.885,
      "target": 4818.907,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-20T11:50:00Z",
      "outcome_time": "2026-04-20T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4794.885,
          "impulse_high": 4810.9,
          "fib_entry_level": "50%",
          "entry": 4802.8925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4794.995,
              "high": 4803.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4800.971, planned_rr=3.0, touch=2026-04-20T12:35:00Z, outcome=tp_first",
      "entry": 4800.971,
      "stop": 4794.885,
      "target": 4819.228,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-20T12:35:00Z",
      "outcome_time": "2026-04-20T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4794.885,
          "impulse_high": 4810.9,
          "fib_entry_level": "62%",
          "entry": 4800.9707,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4794.995,
              "high": 4803.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4815.223, planned_rr=3.0, touch=2026-04-20T12:20:00Z, outcome=sl_first",
      "entry": 4815.223,
      "stop": 4822.175,
      "target": 4794.367,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T12:20:00Z",
      "outcome_time": "2026-04-20T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4803.88,
          "impulse_high": 4822.175,
          "fib_entry_level": "62%",
          "entry": 4815.2229,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4806.277, planned_rr=3.0, touch=2026-04-20T13:05:00Z, outcome=tp_first",
      "entry": 4806.277,
      "stop": 4799.695,
      "target": 4826.021,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-20T13:05:00Z",
      "outcome_time": "2026-04-20T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4799.695,
          "impulse_high": 4817.015,
          "fib_entry_level": "62%",
          "entry": 4806.2766,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4817.299, planned_rr=3.0, touch=2026-04-20T13:20:00Z, outcome=sl_first",
      "entry": 4817.299,
      "stop": 4812.025,
      "target": 4833.123,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T13:20:00Z",
      "outcome_time": "2026-04-20T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4812.025,
          "impulse_high": 4825.905,
          "fib_entry_level": "62%",
          "entry": 4817.2994,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4819.323, planned_rr=3.0, touch=2026-04-20T14:20:00Z, outcome=sl_first",
      "entry": 4819.323,
      "stop": 4814.62,
      "target": 4833.43,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T14:20:00Z",
      "outcome_time": "2026-04-20T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4814.62,
          "impulse_high": 4826.995,
          "fib_entry_level": "62%",
          "entry": 4819.3225,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T14-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-04-20T14:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4809.01, planned_rr=2.0, touch=2026-04-20T14:50:00Z, outcome=sl_first",
      "entry": 4809.01,
      "stop": 4827.695,
      "target": 4771.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T14:50:00Z",
      "outcome_time": "2026-04-20T22:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T14-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4827.695,
          "entry": 4809.01,
          "stop": 4827.695,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4807.625,
              "high": 4810.395,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T14-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-20T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4814.125, planned_rr=2.0, touch=2026-04-20T14:35:00Z, outcome=sl_first",
      "entry": 4814.125,
      "stop": 4827.695,
      "target": 4786.985,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T14:35:00Z",
      "outcome_time": "2026-04-20T22:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T14-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4827.695,
          "entry": 4814.125,
          "stop": 4827.695,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4806.422, planned_rr=3.0, touch=2026-04-20T14:50:00Z, outcome=sl_first",
      "entry": 4806.422,
      "stop": 4814.885,
      "target": 4781.035,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T14:50:00Z",
      "outcome_time": "2026-04-20T18:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4792.615,
          "impulse_high": 4814.885,
          "fib_entry_level": "62%",
          "entry": 4806.4224,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4800.017, planned_rr=3.0, touch=2026-04-20T15:20:00Z, outcome=sl_first",
      "entry": 4800.017,
      "stop": 4794.125,
      "target": 4817.693,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-20T15:20:00Z",
      "outcome_time": "2026-04-20T16:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4794.125,
          "impulse_high": 4809.63,
          "fib_entry_level": "62%",
          "entry": 4800.0169,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-20T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-20T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4811.395, planned_rr=2.0, touch=2026-04-20T18:05:00Z, outcome=tp_first",
      "entry": 4811.395,
      "stop": 4806.84,
      "target": 4820.505,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-20T18:05:00Z",
      "outcome_time": "2026-04-20T19:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-20T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-20",
        "timestamp": "2026-04-20T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4806.84,
          "impulse_high": 4815.95,
          "fib_entry_level": "50%",
          "entry": 4811.395,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4809.785,
              "high": 4811.985,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4827.695,
            "PDL": 4736.83,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4825.667, planned_rr=2.0, touch=2026-04-21T00:05:00Z, outcome=sl_first",
      "entry": 4825.667,
      "stop": 4820.44,
      "target": 4836.122,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T00:05:00Z",
      "outcome_time": "2026-04-21T00:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4820.44,
          "impulse_high": 4830.895,
          "fib_entry_level": "50%",
          "entry": 4825.6675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4821.98,
              "high": 4828.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4824.413, planned_rr=3.0, touch=2026-04-21T00:05:00Z, outcome=sl_first",
      "entry": 4824.413,
      "stop": 4820.44,
      "target": 4836.332,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T00:05:00Z",
      "outcome_time": "2026-04-21T00:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4820.44,
          "impulse_high": 4830.895,
          "fib_entry_level": "62%",
          "entry": 4824.4129,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4821.98,
              "high": 4828.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4824.578, planned_rr=2.0, touch=2026-04-21T00:25:00Z, outcome=tp_first",
      "entry": 4824.578,
      "stop": 4829.595,
      "target": 4814.543,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-21T00:25:00Z",
      "outcome_time": "2026-04-21T01:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4819.56,
          "impulse_high": 4829.595,
          "fib_entry_level": "50%",
          "entry": 4824.5775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4821.55,
              "high": 4826.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4825.782, planned_rr=3.0, touch=2026-04-21T00:20:00Z, outcome=tp_first",
      "entry": 4825.782,
      "stop": 4829.595,
      "target": 4814.342,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-21T00:20:00Z",
      "outcome_time": "2026-04-21T01:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4819.56,
          "impulse_high": 4829.595,
          "fib_entry_level": "62%",
          "entry": 4825.7817000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4821.55,
              "high": 4826.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4818.88, planned_rr=2.0, touch=2026-04-21T01:05:00Z, outcome=tp_first",
      "entry": 4818.88,
      "stop": 4824.54,
      "target": 4807.56,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-21T01:05:00Z",
      "outcome_time": "2026-04-21T01:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4813.22,
          "impulse_high": 4824.54,
          "fib_entry_level": "50%",
          "entry": 4818.88,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4818.73,
              "high": 4821.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4790.641, planned_rr=3.0, touch=2026-04-21T05:45:00Z, outcome=sl_first",
      "entry": 4790.641,
      "stop": 4786.655,
      "target": 4802.6,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T05:45:00Z",
      "outcome_time": "2026-04-21T05:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4786.655,
          "impulse_high": 4797.145,
          "fib_entry_level": "62%",
          "entry": 4790.6412,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4789.942, planned_rr=2.0, touch=2026-04-21T05:50:00Z, outcome=tp_first",
      "entry": 4789.942,
      "stop": 4796.605,
      "target": 4776.617,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-21T05:50:00Z",
      "outcome_time": "2026-04-21T06:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4783.28,
          "impulse_high": 4796.605,
          "fib_entry_level": "50%",
          "entry": 4789.942499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4786.655,
              "high": 4797.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4791.541, planned_rr=3.0, touch=2026-04-21T07:50:00Z, outcome=tp_first",
      "entry": 4791.541,
      "stop": 4796.605,
      "target": 4776.351,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-21T07:50:00Z",
      "outcome_time": "2026-04-21T08:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4783.28,
          "impulse_high": 4796.605,
          "fib_entry_level": "62%",
          "entry": 4791.541499999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4786.655,
              "high": 4797.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4782.017, planned_rr=3.0, touch=2026-04-21T06:20:00Z, outcome=sl_first",
      "entry": 4782.017,
      "stop": 4786.115,
      "target": 4769.722,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T06:20:00Z",
      "outcome_time": "2026-04-21T07:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4775.33,
          "impulse_high": 4786.115,
          "fib_entry_level": "62%",
          "entry": 4782.0167,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4782.844, planned_rr=3.0, touch=2026-04-21T08:05:00Z, outcome=sl_first",
      "entry": 4782.844,
      "stop": 4787.845,
      "target": 4767.842,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T08:05:00Z",
      "outcome_time": "2026-04-21T08:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4774.685,
          "impulse_high": 4787.845,
          "fib_entry_level": "62%",
          "entry": 4782.8442000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4780.633, planned_rr=3.0, touch=2026-04-21T11:05:00Z, outcome=tp_first",
      "entry": 4780.633,
      "stop": 4775.34,
      "target": 4796.514,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-21T11:05:00Z",
      "outcome_time": "2026-04-21T11:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4775.34,
          "impulse_high": 4789.27,
          "fib_entry_level": "62%",
          "entry": 4780.633400000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4784.719, planned_rr=3.0, touch=2026-04-21T11:05:00Z, outcome=sl_first",
      "entry": 4784.719,
      "stop": 4790.375,
      "target": 4767.75,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T11:05:00Z",
      "outcome_time": "2026-04-21T11:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4775.49,
          "impulse_high": 4790.375,
          "fib_entry_level": "62%",
          "entry": 4784.7187,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4784.64,
              "high": 4786.365,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4789.185, planned_rr=2.0, touch=2026-04-21T11:35:00Z, outcome=sl_first",
      "entry": 4789.185,
      "stop": 4783.27,
      "target": 4801.015,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T11:35:00Z",
      "outcome_time": "2026-04-21T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4783.27,
          "impulse_high": 4795.1,
          "fib_entry_level": "50%",
          "entry": 4789.185,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4784.64,
              "high": 4791.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4787.765, planned_rr=3.0, touch=2026-04-21T11:35:00Z, outcome=sl_first",
      "entry": 4787.765,
      "stop": 4783.27,
      "target": 4801.252,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T11:35:00Z",
      "outcome_time": "2026-04-21T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4783.27,
          "impulse_high": 4795.1,
          "fib_entry_level": "62%",
          "entry": 4787.7654,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4784.64,
              "high": 4791.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T11-30-00Z_short_breaker_continuation",
      "timestamp": "2026-04-21T11:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4785.503, planned_rr=2.0, touch=2026-04-21T12:15:00Z, outcome=tp_first",
      "entry": 4785.503,
      "stop": 4795.1,
      "target": 4766.308,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-21T12:15:00Z",
      "outcome_time": "2026-04-21T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T11-30-00Z_short_breaker_continuation",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4795.1,
          "entry": 4785.5025000000005,
          "stop": 4795.1,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4784.64,
              "high": 4786.365,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4790.55,
              "high": 4791.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4785.532, planned_rr=2.0, touch=2026-04-21T12:30:00Z, outcome=tp_first",
      "entry": 4785.532,
      "stop": 4791.86,
      "target": 4772.877,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-21T12:30:00Z",
      "outcome_time": "2026-04-21T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4779.205,
          "impulse_high": 4791.86,
          "fib_entry_level": "50%",
          "entry": 4785.532499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4784.64,
              "high": 4786.365,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4787.051, planned_rr=3.0, touch=2026-04-21T12:30:00Z, outcome=tp_first",
      "entry": 4787.051,
      "stop": 4791.86,
      "target": 4772.624,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-21T12:30:00Z",
      "outcome_time": "2026-04-21T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4779.205,
          "impulse_high": 4791.86,
          "fib_entry_level": "62%",
          "entry": 4787.0511,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4776.817, planned_rr=3.0, touch=2026-04-21T13:05:00Z, outcome=sl_first",
      "entry": 4776.817,
      "stop": 4784.09,
      "target": 4754.997,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T13:05:00Z",
      "outcome_time": "2026-04-21T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4764.95,
          "impulse_high": 4784.09,
          "fib_entry_level": "62%",
          "entry": 4776.8168,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4766.181, planned_rr=3.0, touch=2026-04-21T14:30:00Z, outcome=sl_first",
      "entry": 4766.181,
      "stop": 4760.35,
      "target": 4783.674,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T14:30:00Z",
      "outcome_time": "2026-04-21T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4760.35,
          "impulse_high": 4775.695,
          "fib_entry_level": "62%",
          "entry": 4766.1811,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T13-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-04-21T13:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4788.26, planned_rr=2.0, touch=2026-04-21T13:40:00Z, outcome=sl_first",
      "entry": 4788.26,
      "stop": 4760.35,
      "target": 4844.08,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T13:40:00Z",
      "outcome_time": "2026-04-21T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T13-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4760.35,
          "entry": 4788.26,
          "stop": 4760.35,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4784.64,
              "high": 4791.88,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4775.695,
              "high": 4777.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T13-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-21T13:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4775.08, planned_rr=2.0, touch=2026-04-21T13:25:00Z, outcome=sl_first",
      "entry": 4775.08,
      "stop": 4760.35,
      "target": 4804.54,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T13:25:00Z",
      "outcome_time": "2026-04-21T14:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T13-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4760.35,
          "entry": 4775.08,
          "stop": 4760.35,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4778.972, planned_rr=3.0, touch=2026-04-21T13:35:00Z, outcome=sl_first",
      "entry": 4778.972,
      "stop": 4770.365,
      "target": 4804.793,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T13:35:00Z",
      "outcome_time": "2026-04-21T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4770.365,
          "impulse_high": 4793.015,
          "fib_entry_level": "62%",
          "entry": 4778.972,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4706.706, planned_rr=3.0, touch=2026-04-21T17:35:00Z, outcome=sl_first",
      "entry": 4706.706,
      "stop": 4697.16,
      "target": 4735.342,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T17:35:00Z",
      "outcome_time": "2026-04-21T18:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4697.16,
          "impulse_high": 4722.28,
          "fib_entry_level": "62%",
          "entry": 4706.7056,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T17-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-04-21T17:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4717.75, planned_rr=2.0, touch=2026-04-21T17:40:00Z, outcome=sl_first",
      "entry": 4717.75,
      "stop": 4697.16,
      "target": 4758.93,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T17:40:00Z",
      "outcome_time": "2026-04-21T18:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T17-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4697.16,
          "entry": 4717.75,
          "stop": 4697.16,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4691.755, planned_rr=2.0, touch=2026-04-21T19:40:00Z, outcome=sl_first",
      "entry": 4691.755,
      "stop": 4714.89,
      "target": 4645.485,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T19:40:00Z",
      "outcome_time": "2026-04-21T20:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4668.62,
          "impulse_high": 4714.89,
          "fib_entry_level": "50%",
          "entry": 4691.755,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4685.87,
              "high": 4704.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-21T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-21T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4697.307, planned_rr=3.0, touch=2026-04-21T19:40:00Z, outcome=sl_first",
      "entry": 4697.307,
      "stop": 4714.89,
      "target": 4644.56,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-21T19:40:00Z",
      "outcome_time": "2026-04-21T20:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-21T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-21",
        "timestamp": "2026-04-21T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4668.62,
          "impulse_high": 4714.89,
          "fib_entry_level": "62%",
          "entry": 4697.307400000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4685.87,
              "high": 4704.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4833.405,
            "PDL": 4668.62,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4764.494, planned_rr=3.0, touch=2026-04-22T06:20:00Z, outcome=sl_first",
      "entry": 4764.494,
      "stop": 4768.0,
      "target": 4753.978,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T06:20:00Z",
      "outcome_time": "2026-04-22T06:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4758.775,
          "impulse_high": 4768.0,
          "fib_entry_level": "62%",
          "entry": 4764.4945,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4753.308, planned_rr=3.0, touch=2026-04-22T10:15:00Z, outcome=sl_first",
      "entry": 4753.308,
      "stop": 4757.855,
      "target": 4739.668,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T10:15:00Z",
      "outcome_time": "2026-04-22T10:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4745.89,
          "impulse_high": 4757.855,
          "fib_entry_level": "62%",
          "entry": 4753.3083,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4754.32, planned_rr=2.0, touch=2026-04-22T11:40:00Z, outcome=sl_first",
      "entry": 4754.32,
      "stop": 4760.065,
      "target": 4742.83,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T11:40:00Z",
      "outcome_time": "2026-04-22T12:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4748.575,
          "impulse_high": 4760.065,
          "fib_entry_level": "50%",
          "entry": 4754.32,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4753.485,
              "high": 4756.545,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4747.255,
              "high": 4760.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4755.699, planned_rr=3.0, touch=2026-04-22T11:35:00Z, outcome=sl_first",
      "entry": 4755.699,
      "stop": 4760.065,
      "target": 4742.6,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T11:35:00Z",
      "outcome_time": "2026-04-22T12:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4748.575,
          "impulse_high": 4760.065,
          "fib_entry_level": "62%",
          "entry": 4755.6988,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4753.485,
              "high": 4756.545,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4747.255,
              "high": 4760.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4750.01, planned_rr=2.0, touch=2026-04-22T12:35:00Z, outcome=tp_first",
      "entry": 4750.01,
      "stop": 4754.4,
      "target": 4741.23,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-22T12:35:00Z",
      "outcome_time": "2026-04-22T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4745.62,
          "impulse_high": 4754.4,
          "fib_entry_level": "50%",
          "entry": 4750.01,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4747.255,
              "high": 4760.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4751.064, planned_rr=3.0, touch=2026-04-22T12:35:00Z, outcome=tp_first",
      "entry": 4751.064,
      "stop": 4754.4,
      "target": 4741.054,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-22T12:35:00Z",
      "outcome_time": "2026-04-22T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4745.62,
          "impulse_high": 4754.4,
          "fib_entry_level": "62%",
          "entry": 4751.0635999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4747.255,
              "high": 4760.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4750.003, planned_rr=2.0, touch=2026-04-22T14:20:00Z, outcome=tp_first",
      "entry": 4750.003,
      "stop": 4757.53,
      "target": 4734.948,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-22T14:20:00Z",
      "outcome_time": "2026-04-22T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4742.475,
          "impulse_high": 4757.53,
          "fib_entry_level": "50%",
          "entry": 4750.0025000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4747.255,
              "high": 4760.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4739.2, planned_rr=3.0, touch=2026-04-22T14:40:00Z, outcome=sl_first",
      "entry": 4739.2,
      "stop": 4744.845,
      "target": 4722.265,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T14:40:00Z",
      "outcome_time": "2026-04-22T18:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4729.99,
          "impulse_high": 4744.845,
          "fib_entry_level": "62%",
          "entry": 4739.2001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4731.919, planned_rr=3.0, touch=2026-04-22T15:35:00Z, outcome=sl_first",
      "entry": 4731.919,
      "stop": 4735.485,
      "target": 4721.22,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T15:35:00Z",
      "outcome_time": "2026-04-22T17:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4726.1,
          "impulse_high": 4735.485,
          "fib_entry_level": "62%",
          "entry": 4731.9187,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-22T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-22T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4739.993, planned_rr=3.0, touch=2026-04-22T22:05:00Z, outcome=sl_first",
      "entry": 4739.993,
      "stop": 4742.305,
      "target": 4733.056,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-22T22:05:00Z",
      "outcome_time": "2026-04-22T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-22T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-22",
        "timestamp": "2026-04-22T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4736.22,
          "impulse_high": 4742.305,
          "fib_entry_level": "62%",
          "entry": 4739.992700000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4772.385,
            "PDL": 4715.78,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4717.044, planned_rr=3.0, touch=2026-04-23T00:05:00Z, outcome=sl_first",
      "entry": 4717.044,
      "stop": 4728.275,
      "target": 4683.351,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T00:05:00Z",
      "outcome_time": "2026-04-23T00:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4698.72,
          "impulse_high": 4728.275,
          "fib_entry_level": "62%",
          "entry": 4717.0441,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4715.743, planned_rr=2.0, touch=2026-04-23T02:05:00Z, outcome=tp_first",
      "entry": 4715.743,
      "stop": 4724.81,
      "target": 4697.608,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-23T02:05:00Z",
      "outcome_time": "2026-04-23T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4706.675,
          "impulse_high": 4724.81,
          "fib_entry_level": "50%",
          "entry": 4715.7425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4705.17,
              "high": 4718.44,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4717.919, planned_rr=3.0, touch=2026-04-23T02:05:00Z, outcome=tp_first",
      "entry": 4717.919,
      "stop": 4724.81,
      "target": 4697.245,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-23T02:05:00Z",
      "outcome_time": "2026-04-23T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4706.675,
          "impulse_high": 4724.81,
          "fib_entry_level": "62%",
          "entry": 4717.9187,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4705.17,
              "high": 4718.44,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4708.59, planned_rr=2.0, touch=2026-04-23T07:20:00Z, outcome=sl_first",
      "entry": 4708.59,
      "stop": 4713.98,
      "target": 4697.81,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T07:20:00Z",
      "outcome_time": "2026-04-23T07:45:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4703.2,
          "impulse_high": 4713.98,
          "fib_entry_level": "50%",
          "entry": 4708.59,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4707.745,
              "high": 4715.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4709.884, planned_rr=3.0, touch=2026-04-23T07:20:00Z, outcome=sl_first",
      "entry": 4709.884,
      "stop": 4713.98,
      "target": 4697.594,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T07:20:00Z",
      "outcome_time": "2026-04-23T07:45:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4703.2,
          "impulse_high": 4713.98,
          "fib_entry_level": "62%",
          "entry": 4709.883599999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4707.745,
              "high": 4715.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4700.416, planned_rr=3.0, touch=2026-04-23T09:05:00Z, outcome=tp_first",
      "entry": 4700.416,
      "stop": 4703.79,
      "target": 4690.292,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-23T09:05:00Z",
      "outcome_time": "2026-04-23T10:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4694.91,
          "impulse_high": 4703.79,
          "fib_entry_level": "62%",
          "entry": 4700.4156,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4693.568, planned_rr=2.0, touch=2026-04-23T10:05:00Z, outcome=sl_first",
      "entry": 4693.568,
      "stop": 4701.805,
      "target": 4677.092,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T10:05:00Z",
      "outcome_time": "2026-04-23T10:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4685.33,
          "impulse_high": 4701.805,
          "fib_entry_level": "50%",
          "entry": 4693.5675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4692.625,
              "high": 4694.765,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4695.544, planned_rr=3.0, touch=2026-04-23T10:05:00Z, outcome=sl_first",
      "entry": 4695.544,
      "stop": 4701.805,
      "target": 4676.763,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T10:05:00Z",
      "outcome_time": "2026-04-23T10:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4685.33,
          "impulse_high": 4701.805,
          "fib_entry_level": "62%",
          "entry": 4695.5445,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4734.478, planned_rr=3.0, touch=2026-04-23T13:40:00Z, outcome=sl_first",
      "entry": 4734.478,
      "stop": 4740.93,
      "target": 4715.12,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T13:40:00Z",
      "outcome_time": "2026-04-23T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4723.95,
          "impulse_high": 4740.93,
          "fib_entry_level": "62%",
          "entry": 4734.4776,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4734.762, planned_rr=3.0, touch=2026-04-23T13:50:00Z, outcome=sl_first",
      "entry": 4734.762,
      "stop": 4741.23,
      "target": 4715.36,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T13:50:00Z",
      "outcome_time": "2026-04-23T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4724.21,
          "impulse_high": 4741.23,
          "fib_entry_level": "62%",
          "entry": 4734.7624,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4720.29, planned_rr=2.0, touch=2026-04-23T17:05:00Z, outcome=tp_first",
      "entry": 4720.29,
      "stop": 4734.61,
      "target": 4691.65,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-23T17:05:00Z",
      "outcome_time": "2026-04-23T17:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T17-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4705.97,
          "impulse_high": 4734.61,
          "fib_entry_level": "50%",
          "entry": 4720.29,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4718.145,
              "high": 4730.86,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4713.015, planned_rr=3.0, touch=2026-04-23T17:25:00Z, outcome=sl_first",
      "entry": 4713.015,
      "stop": 4718.145,
      "target": 4697.625,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T17:25:00Z",
      "outcome_time": "2026-04-23T17:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4704.645,
          "impulse_high": 4718.145,
          "fib_entry_level": "62%",
          "entry": 4713.015,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-23T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-23T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4698.638, planned_rr=3.0, touch=2026-04-23T17:35:00Z, outcome=sl_first",
      "entry": 4698.638,
      "stop": 4714.195,
      "target": 4651.966,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-23T17:35:00Z",
      "outcome_time": "2026-04-23T17:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-23T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-23",
        "timestamp": "2026-04-23T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4673.255,
          "impulse_high": 4714.195,
          "fib_entry_level": "62%",
          "entry": 4698.6377999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4754.2,
            "PDL": 4664.38,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T01-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-24T01:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4698.535, planned_rr=2.0, touch=2026-04-24T01:25:00Z, outcome=tp_first",
      "entry": 4698.535,
      "stop": 4711.23,
      "target": 4673.145,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-24T01:25:00Z",
      "outcome_time": "2026-04-24T02:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T01-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4711.23,
          "entry": 4698.535,
          "stop": 4711.23,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4697.811, planned_rr=3.0, touch=2026-04-24T01:35:00Z, outcome=tp_first",
      "entry": 4697.811,
      "stop": 4702.335,
      "target": 4684.239,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-24T01:35:00Z",
      "outcome_time": "2026-04-24T02:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4690.43,
          "impulse_high": 4702.335,
          "fib_entry_level": "62%",
          "entry": 4697.8111,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4690.908, planned_rr=3.0, touch=2026-04-24T02:20:00Z, outcome=tp_first",
      "entry": 4690.908,
      "stop": 4696.445,
      "target": 4674.299,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-24T02:20:00Z",
      "outcome_time": "2026-04-24T02:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4681.875,
          "impulse_high": 4696.445,
          "fib_entry_level": "62%",
          "entry": 4690.9084,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4666.278, planned_rr=3.0, touch=2026-04-24T04:20:00Z, outcome=sl_first",
      "entry": 4666.278,
      "stop": 4671.005,
      "target": 4652.096,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-24T04:20:00Z",
      "outcome_time": "2026-04-24T04:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4658.565,
          "impulse_high": 4671.005,
          "fib_entry_level": "62%",
          "entry": 4666.2778,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4677.593, planned_rr=3.0, touch=2026-04-24T06:20:00Z, outcome=sl_first",
      "entry": 4677.593,
      "stop": 4682.13,
      "target": 4663.981,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-24T06:20:00Z",
      "outcome_time": "2026-04-24T07:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.19,
          "impulse_high": 4682.13,
          "fib_entry_level": "62%",
          "entry": 4677.5928,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4676.35,
              "high": 4680.765,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4689.573, planned_rr=2.0, touch=2026-04-24T09:20:00Z, outcome=tp_first",
      "entry": 4689.573,
      "stop": 4696.76,
      "target": 4675.198,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-24T09:20:00Z",
      "outcome_time": "2026-04-24T10:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4682.385,
          "impulse_high": 4696.76,
          "fib_entry_level": "50%",
          "entry": 4689.5725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4688.685,
              "high": 4689.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4691.298, planned_rr=3.0, touch=2026-04-24T09:20:00Z, outcome=tp_first",
      "entry": 4691.298,
      "stop": 4696.76,
      "target": 4674.91,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-24T09:20:00Z",
      "outcome_time": "2026-04-24T10:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4682.385,
          "impulse_high": 4696.76,
          "fib_entry_level": "62%",
          "entry": 4691.297500000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4689.88,
              "high": 4695.575,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4712.758, planned_rr=3.0, touch=2026-04-24T11:35:00Z, outcome=tp_first",
      "entry": 4712.758,
      "stop": 4717.44,
      "target": 4698.714,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-24T11:35:00Z",
      "outcome_time": "2026-04-24T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4705.12,
          "impulse_high": 4717.44,
          "fib_entry_level": "62%",
          "entry": 4712.7584,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T11-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-04-24T11:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4689.283, planned_rr=2.0, touch=2026-04-26T22:05:00Z, outcome=sl_first",
      "entry": 4689.283,
      "stop": 4717.44,
      "target": 4632.968,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-26T22:05:00Z",
      "outcome_time": "2026-04-27T02:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T11-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4717.44,
          "entry": 4689.2825,
          "stop": 4717.44,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4688.685,
              "high": 4689.88,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4689.88,
              "high": 4695.575,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T11-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-24T11:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4705.5, planned_rr=2.0, touch=2026-04-24T11:40:00Z, outcome=sl_first",
      "entry": 4705.5,
      "stop": 4717.44,
      "target": 4681.62,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-24T11:40:00Z",
      "outcome_time": "2026-04-24T13:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T11-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4717.44,
          "entry": 4705.5,
          "stop": 4717.44,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-24T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-24T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4706.882, planned_rr=3.0, touch=2026-04-24T12:35:00Z, outcome=tp_first",
      "entry": 4706.882,
      "stop": 4711.94,
      "target": 4691.709,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-24T12:35:00Z",
      "outcome_time": "2026-04-24T12:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-24T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-24",
        "timestamp": "2026-04-24T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4698.63,
          "impulse_high": 4711.94,
          "fib_entry_level": "62%",
          "entry": 4706.8822,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-26T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-26T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4688.823, planned_rr=2.0, touch=2026-04-26T22:05:00Z, outcome=sl_first",
      "entry": 4688.823,
      "stop": 4697.365,
      "target": 4671.738,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-26T22:05:00Z",
      "outcome_time": "2026-04-26T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-26T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-26",
        "timestamp": "2026-04-26T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4680.28,
          "impulse_high": 4697.365,
          "fib_entry_level": "50%",
          "entry": 4688.8225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4688.725,
              "high": 4706.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-26T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-26T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4690.873, planned_rr=3.0, touch=2026-04-26T22:05:00Z, outcome=sl_first",
      "entry": 4690.873,
      "stop": 4697.365,
      "target": 4671.396,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-26T22:05:00Z",
      "outcome_time": "2026-04-26T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-26T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-26",
        "timestamp": "2026-04-26T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4680.28,
          "impulse_high": 4697.365,
          "fib_entry_level": "62%",
          "entry": 4690.8727,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4688.725,
              "high": 4706.71,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-26T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-26T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4681.875, planned_rr=3.0, touch=2026-04-26T23:20:00Z, outcome=tp_first",
      "entry": 4681.875,
      "stop": 4684.66,
      "target": 4673.518,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-26T23:20:00Z",
      "outcome_time": "2026-04-27T00:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-26T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-26",
        "timestamp": "2026-04-26T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4677.33,
          "impulse_high": 4684.66,
          "fib_entry_level": "62%",
          "entry": 4681.8746,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4740.57,
            "PDL": 4658.03,
            "PWH": 4833.405,
            "PWL": 4658.03
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4707.209, planned_rr=3.0, touch=2026-04-27T11:05:00Z, outcome=tp_first",
      "entry": 4707.209,
      "stop": 4709.145,
      "target": 4701.401,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-27T11:05:00Z",
      "outcome_time": "2026-04-27T11:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4704.05,
          "impulse_high": 4709.145,
          "fib_entry_level": "62%",
          "entry": 4707.2089000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4707.11,
              "high": 4707.215,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4702.602, planned_rr=2.0, touch=2026-04-27T12:35:00Z, outcome=tp_first",
      "entry": 4702.602,
      "stop": 4707.965,
      "target": 4691.877,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-27T12:35:00Z",
      "outcome_time": "2026-04-27T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4697.24,
          "impulse_high": 4707.965,
          "fib_entry_level": "50%",
          "entry": 4702.6025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4697.12,
              "high": 4704.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4703.89, planned_rr=3.0, touch=2026-04-27T12:35:00Z, outcome=tp_first",
      "entry": 4703.89,
      "stop": 4707.965,
      "target": 4691.663,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-27T12:35:00Z",
      "outcome_time": "2026-04-27T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4697.24,
          "impulse_high": 4707.965,
          "fib_entry_level": "62%",
          "entry": 4703.8895,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4697.12,
              "high": 4704.455,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4695.935, planned_rr=2.0, touch=2026-04-27T13:45:00Z, outcome=tp_first",
      "entry": 4695.935,
      "stop": 4702.745,
      "target": 4682.315,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-27T13:45:00Z",
      "outcome_time": "2026-04-27T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4689.125,
          "impulse_high": 4702.745,
          "fib_entry_level": "50%",
          "entry": 4695.9349999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4683.71,
              "high": 4696.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4685.42, planned_rr=2.0, touch=2026-04-27T14:50:00Z, outcome=tp_first",
      "entry": 4685.42,
      "stop": 4694.125,
      "target": 4668.01,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-27T14:50:00Z",
      "outcome_time": "2026-04-27T15:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4676.715,
          "impulse_high": 4694.125,
          "fib_entry_level": "50%",
          "entry": 4685.42,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4683.71,
              "high": 4696.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-27T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-27T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4674.128, planned_rr=3.0, touch=2026-04-27T15:50:00Z, outcome=sl_first",
      "entry": 4674.128,
      "stop": 4678.0,
      "target": 4662.511,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-27T15:50:00Z",
      "outcome_time": "2026-04-27T16:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-27T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-27",
        "timestamp": "2026-04-27T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4667.81,
          "impulse_high": 4678.0,
          "fib_entry_level": "62%",
          "entry": 4674.1278,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4729.965,
            "PDL": 4667.335,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T00-00-00Z_short_breaker_continuation",
      "timestamp": "2026-04-28T00:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4691.465, planned_rr=2.0, touch=2026-04-28T00:55:00Z, outcome=tp_first",
      "entry": 4691.465,
      "stop": 4701.64,
      "target": 4671.115,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-28T00:55:00Z",
      "outcome_time": "2026-04-28T01:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T00-00-00Z_short_breaker_continuation",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4701.64,
          "entry": 4691.465,
          "stop": 4701.64,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4691.225,
              "high": 4691.705,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4678.245,
              "high": 4684.235,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4678.658, planned_rr=2.0, touch=2026-04-28T01:55:00Z, outcome=tp_first",
      "entry": 4678.658,
      "stop": 4687.84,
      "target": 4660.293,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-28T01:55:00Z",
      "outcome_time": "2026-04-28T05:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4669.475,
          "impulse_high": 4687.84,
          "fib_entry_level": "50%",
          "entry": 4678.6575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4678.245,
              "high": 4684.235,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4658.253, planned_rr=2.0, touch=2026-04-28T05:05:00Z, outcome=tp_first",
      "entry": 4658.253,
      "stop": 4668.08,
      "target": 4638.598,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-28T05:05:00Z",
      "outcome_time": "2026-04-28T05:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4648.425,
          "impulse_high": 4668.08,
          "fib_entry_level": "50%",
          "entry": 4658.2525000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4651.405,
              "high": 4659.575,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4641.593, planned_rr=2.0, touch=2026-04-28T05:35:00Z, outcome=tp_first",
      "entry": 4641.593,
      "stop": 4658.84,
      "target": 4607.098,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-28T05:35:00Z",
      "outcome_time": "2026-04-28T09:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4624.345,
          "impulse_high": 4658.84,
          "fib_entry_level": "50%",
          "entry": 4641.592500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4634.43,
              "high": 4651.405,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4624.17, planned_rr=2.0, touch=2026-04-28T08:05:00Z, outcome=sl_first",
      "entry": 4624.17,
      "stop": 4633.59,
      "target": 4605.33,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T08:05:00Z",
      "outcome_time": "2026-04-28T08:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4614.75,
          "impulse_high": 4633.59,
          "fib_entry_level": "50%",
          "entry": 4624.17,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4620.655,
              "high": 4633.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4626.431, planned_rr=3.0, touch=2026-04-28T08:25:00Z, outcome=sl_first",
      "entry": 4626.431,
      "stop": 4633.59,
      "target": 4604.953,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T08:25:00Z",
      "outcome_time": "2026-04-28T08:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4614.75,
          "impulse_high": 4633.59,
          "fib_entry_level": "62%",
          "entry": 4626.4308,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4620.655,
              "high": 4633.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4584.233, planned_rr=2.0, touch=2026-04-28T11:35:00Z, outcome=sl_first",
      "entry": 4584.233,
      "stop": 4600.13,
      "target": 4552.438,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T11:35:00Z",
      "outcome_time": "2026-04-28T12:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4568.335,
          "impulse_high": 4600.13,
          "fib_entry_level": "50%",
          "entry": 4584.2325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4574.275,
              "high": 4594.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4588.048, planned_rr=3.0, touch=2026-04-28T11:35:00Z, outcome=sl_first",
      "entry": 4588.048,
      "stop": 4600.13,
      "target": 4551.802,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T11:35:00Z",
      "outcome_time": "2026-04-28T12:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4568.335,
          "impulse_high": 4600.13,
          "fib_entry_level": "62%",
          "entry": 4588.0479000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4574.275,
              "high": 4594.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4567.192, planned_rr=3.0, touch=2026-04-28T12:00:00Z, outcome=sl_first",
      "entry": 4567.192,
      "stop": 4574.275,
      "target": 4545.942,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T12:00:00Z",
      "outcome_time": "2026-04-28T12:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4555.635,
          "impulse_high": 4574.275,
          "fib_entry_level": "62%",
          "entry": 4567.1918,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4583.08, planned_rr=2.0, touch=2026-04-28T13:05:00Z, outcome=tp_first",
      "entry": 4583.08,
      "stop": 4594.85,
      "target": 4559.54,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-28T13:05:00Z",
      "outcome_time": "2026-04-28T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4571.31,
          "impulse_high": 4594.85,
          "fib_entry_level": "50%",
          "entry": 4583.08,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4574.275,
              "high": 4594.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4585.905, planned_rr=3.0, touch=2026-04-28T13:40:00Z, outcome=tp_first",
      "entry": 4585.905,
      "stop": 4594.85,
      "target": 4559.069,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-28T13:40:00Z",
      "outcome_time": "2026-04-28T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4571.31,
          "impulse_high": 4594.85,
          "fib_entry_level": "62%",
          "entry": 4585.9048,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4574.275,
              "high": 4594.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4574.804, planned_rr=3.0, touch=2026-04-28T14:05:00Z, outcome=sl_first",
      "entry": 4574.804,
      "stop": 4580.88,
      "target": 4556.575,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T14:05:00Z",
      "outcome_time": "2026-04-28T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4564.89,
          "impulse_high": 4580.88,
          "fib_entry_level": "62%",
          "entry": 4574.803800000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4574.275,
              "high": 4594.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4594.752, planned_rr=2.0, touch=2026-04-28T20:30:00Z, outcome=sl_first",
      "entry": 4594.752,
      "stop": 4598.23,
      "target": 4587.797,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T20:30:00Z",
      "outcome_time": "2026-04-28T22:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4591.275,
          "impulse_high": 4598.23,
          "fib_entry_level": "50%",
          "entry": 4594.7525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4592.38,
              "high": 4595.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-28T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-28T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4595.587, planned_rr=3.0, touch=2026-04-28T20:50:00Z, outcome=sl_first",
      "entry": 4595.587,
      "stop": 4598.23,
      "target": 4587.658,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-28T20:50:00Z",
      "outcome_time": "2026-04-28T22:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-28T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-28",
        "timestamp": "2026-04-28T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4591.275,
          "impulse_high": 4598.23,
          "fib_entry_level": "62%",
          "entry": 4595.5871,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4594.975,
              "high": 4598.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4701.64,
            "PDL": 4555.135,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T00-00-00Z_short_breaker_continuation",
      "timestamp": "2026-04-29T00:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4596.812, planned_rr=2.0, touch=2026-04-29T00:50:00Z, outcome=tp_first",
      "entry": 4596.812,
      "stop": 4610.535,
      "target": 4569.368,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-29T00:50:00Z",
      "outcome_time": "2026-04-29T07:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T00-00-00Z_short_breaker_continuation",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4610.535,
          "entry": 4596.8125,
          "stop": 4610.535,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4594.975,
              "high": 4598.65,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4592.38,
              "high": 4595.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4604.477, planned_rr=3.0, touch=2026-04-29T00:25:00Z, outcome=tp_first",
      "entry": 4604.477,
      "stop": 4607.92,
      "target": 4594.149,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-29T00:25:00Z",
      "outcome_time": "2026-04-29T01:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4598.86,
          "impulse_high": 4607.92,
          "fib_entry_level": "62%",
          "entry": 4604.4772,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4588.243, planned_rr=2.0, touch=2026-04-29T01:35:00Z, outcome=sl_first",
      "entry": 4588.243,
      "stop": 4600.765,
      "target": 4563.198,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T01:35:00Z",
      "outcome_time": "2026-04-29T02:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4575.72,
          "impulse_high": 4600.765,
          "fib_entry_level": "50%",
          "entry": 4588.2425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4586.74,
              "high": 4596.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4591.248, planned_rr=3.0, touch=2026-04-29T01:40:00Z, outcome=sl_first",
      "entry": 4591.248,
      "stop": 4600.765,
      "target": 4562.697,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T01:40:00Z",
      "outcome_time": "2026-04-29T02:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4575.72,
          "impulse_high": 4600.765,
          "fib_entry_level": "62%",
          "entry": 4591.2479,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4586.74,
              "high": 4596.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4598.556, planned_rr=3.0, touch=2026-04-29T05:50:00Z, outcome=sl_first",
      "entry": 4598.556,
      "stop": 4603.325,
      "target": 4584.249,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T05:50:00Z",
      "outcome_time": "2026-04-29T05:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4590.775,
          "impulse_high": 4603.325,
          "fib_entry_level": "62%",
          "entry": 4598.556,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4575.046, planned_rr=3.0, touch=2026-04-29T09:20:00Z, outcome=sl_first",
      "entry": 4575.046,
      "stop": 4580.75,
      "target": 4557.935,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T09:20:00Z",
      "outcome_time": "2026-04-29T09:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4565.74,
          "impulse_high": 4580.75,
          "fib_entry_level": "62%",
          "entry": 4575.0462,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T09-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-04-29T09:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4570.142, planned_rr=2.0, touch=2026-04-29T09:25:00Z, outcome=tp_first",
      "entry": 4570.142,
      "stop": 4580.75,
      "target": 4548.927,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-29T09:25:00Z",
      "outcome_time": "2026-04-29T12:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T09-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4580.75,
          "entry": 4570.1425,
          "stop": 4580.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4569.725,
              "high": 4570.56,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4562.29,
              "high": 4565.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T09-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-04-29T09:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4565.77, planned_rr=2.0, touch=2026-04-29T09:25:00Z, outcome=tp_first",
      "entry": 4565.77,
      "stop": 4580.75,
      "target": 4535.81,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-29T09:25:00Z",
      "outcome_time": "2026-04-29T13:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T09-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4580.75,
          "entry": 4565.77,
          "stop": 4580.75,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4564.273, planned_rr=2.0, touch=2026-04-29T09:35:00Z, outcome=sl_first",
      "entry": 4564.273,
      "stop": 4569.725,
      "target": 4553.367,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T09:35:00Z",
      "outcome_time": "2026-04-29T09:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4558.82,
          "impulse_high": 4569.725,
          "fib_entry_level": "50%",
          "entry": 4564.2725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4562.29,
              "high": 4565.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4565.581, planned_rr=3.0, touch=2026-04-29T09:35:00Z, outcome=sl_first",
      "entry": 4565.581,
      "stop": 4569.725,
      "target": 4553.149,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T09:35:00Z",
      "outcome_time": "2026-04-29T09:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4558.82,
          "impulse_high": 4569.725,
          "fib_entry_level": "62%",
          "entry": 4565.5811,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4562.29,
              "high": 4565.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4550.958, planned_rr=2.0, touch=2026-04-29T12:50:00Z, outcome=tp_first",
      "entry": 4550.958,
      "stop": 4560.21,
      "target": 4532.453,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-29T12:50:00Z",
      "outcome_time": "2026-04-29T13:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4541.705,
          "impulse_high": 4560.21,
          "fib_entry_level": "50%",
          "entry": 4550.9575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4544.91,
              "high": 4553.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4553.178, planned_rr=3.0, touch=2026-04-29T12:50:00Z, outcome=tp_first",
      "entry": 4553.178,
      "stop": 4560.21,
      "target": 4532.082,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-29T12:50:00Z",
      "outcome_time": "2026-04-29T13:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4541.705,
          "impulse_high": 4560.21,
          "fib_entry_level": "62%",
          "entry": 4553.1781,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4544.91,
              "high": 4553.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4543.138, planned_rr=2.0, touch=2026-04-29T13:20:00Z, outcome=tp_first",
      "entry": 4543.138,
      "stop": 4551.635,
      "target": 4526.143,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-29T13:20:00Z",
      "outcome_time": "2026-04-29T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4534.64,
          "impulse_high": 4551.635,
          "fib_entry_level": "50%",
          "entry": 4543.137500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4539.495,
              "high": 4544.91,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4545.177, planned_rr=3.0, touch=2026-04-29T15:00:00Z, outcome=sl_first",
      "entry": 4545.177,
      "stop": 4551.635,
      "target": 4525.803,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T15:00:00Z",
      "outcome_time": "2026-04-29T15:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4534.64,
          "impulse_high": 4551.635,
          "fib_entry_level": "62%",
          "entry": 4545.1769,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4544.91,
              "high": 4553.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4529.725, planned_rr=3.0, touch=2026-04-29T13:35:00Z, outcome=sl_first",
      "entry": 4529.725,
      "stop": 4539.495,
      "target": 4500.416,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T13:35:00Z",
      "outcome_time": "2026-04-29T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4513.785,
          "impulse_high": 4539.495,
          "fib_entry_level": "62%",
          "entry": 4529.7252,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4539.18, planned_rr=2.0, touch=2026-04-29T18:05:00Z, outcome=sl_first",
      "entry": 4539.18,
      "stop": 4553.05,
      "target": 4511.44,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T18:05:00Z",
      "outcome_time": "2026-04-29T20:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4525.31,
          "impulse_high": 4553.05,
          "fib_entry_level": "50%",
          "entry": 4539.18,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4525.16,
              "high": 4540.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4542.509, planned_rr=3.0, touch=2026-04-29T19:00:00Z, outcome=sl_first",
      "entry": 4542.509,
      "stop": 4553.05,
      "target": 4510.885,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T19:00:00Z",
      "outcome_time": "2026-04-29T20:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.31,
          "impulse_high": 4553.05,
          "fib_entry_level": "62%",
          "entry": 4542.5088000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4541.79,
              "high": 4547.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4530.812, planned_rr=2.0, touch=2026-04-29T18:35:00Z, outcome=sl_first",
      "entry": 4530.812,
      "stop": 4540.975,
      "target": 4510.487,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T18:35:00Z",
      "outcome_time": "2026-04-29T18:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4520.65,
          "impulse_high": 4540.975,
          "fib_entry_level": "50%",
          "entry": 4530.8125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4525.16,
              "high": 4540.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-29T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-29T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4533.252, planned_rr=3.0, touch=2026-04-29T18:35:00Z, outcome=sl_first",
      "entry": 4533.252,
      "stop": 4540.975,
      "target": 4510.081,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-29T18:35:00Z",
      "outcome_time": "2026-04-29T18:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-29T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-29",
        "timestamp": "2026-04-29T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4520.65,
          "impulse_high": 4540.975,
          "fib_entry_level": "62%",
          "entry": 4533.2515,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4525.16,
              "high": 4540.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4610.535,
            "PDL": 4510.095,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4567.403, planned_rr=2.0, touch=2026-04-30T02:35:00Z, outcome=tp_first",
      "entry": 4567.403,
      "stop": 4574.41,
      "target": 4553.388,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-04-30T02:35:00Z",
      "outcome_time": "2026-04-30T04:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-04-30T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4560.395,
          "impulse_high": 4574.41,
          "fib_entry_level": "50%",
          "entry": 4567.4025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4565.46,
              "high": 4572.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4569.084, planned_rr=3.0, touch=2026-04-30T02:35:00Z, outcome=tp_first",
      "entry": 4569.084,
      "stop": 4574.41,
      "target": 4553.107,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-04-30T02:35:00Z",
      "outcome_time": "2026-04-30T04:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-30T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4560.395,
          "impulse_high": 4574.41,
          "fib_entry_level": "62%",
          "entry": 4569.0843,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4565.46,
              "high": 4572.125,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4552.777, planned_rr=3.0, touch=2026-04-30T04:20:00Z, outcome=sl_first",
      "entry": 4552.777,
      "stop": 4557.09,
      "target": 4539.838,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-30T04:20:00Z",
      "outcome_time": "2026-04-30T05:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-30T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4545.74,
          "impulse_high": 4557.09,
          "fib_entry_level": "62%",
          "entry": 4552.777,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4619.943, planned_rr=3.0, touch=2026-04-30T13:50:00Z, outcome=sl_first",
      "entry": 4619.943,
      "stop": 4625.535,
      "target": 4603.168,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-04-30T13:50:00Z",
      "outcome_time": "2026-04-30T14:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-04-30T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4610.82,
          "impulse_high": 4625.535,
          "fib_entry_level": "62%",
          "entry": 4619.9433,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T19:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4622.321,
      "stop": 4625.545,
      "target": 4612.648,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-04-30T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T19:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4617.06,
          "impulse_high": 4625.545,
          "fib_entry_level": "62%",
          "entry": 4622.3207,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4620.024,
      "stop": 4623.315,
      "target": 4610.152,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-04-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4614.655,
          "impulse_high": 4623.315,
          "fib_entry_level": "62%",
          "entry": 4620.0242,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-04-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-04-30T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4630.804,
      "stop": 4633.39,
      "target": 4623.046,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-04-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-04-30",
        "timestamp": "2026-04-30T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4626.585,
          "impulse_high": 4633.39,
          "fib_entry_level": "62%",
          "entry": 4630.8041,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4647.045,
            "PDL": 4539.685,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4626.16,
      "stop": 4631.365,
      "target": 4615.75,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4620.955,
          "impulse_high": 4631.365,
          "fib_entry_level": "50%",
          "entry": 4626.16,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4621.17,
              "high": 4628.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4627.409,
      "stop": 4631.365,
      "target": 4615.542,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4620.955,
          "impulse_high": 4631.365,
          "fib_entry_level": "62%",
          "entry": 4627.4092,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4621.17,
              "high": 4628.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4627.602,
      "stop": 4631.045,
      "target": 4620.717,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4624.16,
          "impulse_high": 4631.045,
          "fib_entry_level": "50%",
          "entry": 4627.6025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4621.17,
              "high": 4628.705,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4624.77,
              "high": 4628.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4628.429,
      "stop": 4631.045,
      "target": 4620.58,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4624.16,
          "impulse_high": 4631.045,
          "fib_entry_level": "62%",
          "entry": 4628.4287,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4621.17,
              "high": 4628.705,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4624.77,
              "high": 4628.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4621.686,
      "stop": 4624.77,
      "target": 4612.435,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4616.655,
          "impulse_high": 4624.77,
          "fib_entry_level": "62%",
          "entry": 4621.6863,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4621.17,
              "high": 4628.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4582.236, planned_rr=3.0, touch=2026-05-29T15:05:00Z, outcome=sl_first",
      "entry": 4582.236,
      "stop": 4586.135,
      "target": 4570.54,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-01T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4575.875,
          "impulse_high": 4586.135,
          "fib_entry_level": "62%",
          "entry": 4582.2362,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4571.847, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4571.847,
      "stop": 4577.06,
      "target": 4561.422,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-01T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4566.635,
          "impulse_high": 4577.06,
          "fib_entry_level": "50%",
          "entry": 4571.8475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4567.71,
              "high": 4573.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4573.099, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4573.099,
      "stop": 4577.06,
      "target": 4561.214,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-01T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4566.635,
          "impulse_high": 4577.06,
          "fib_entry_level": "62%",
          "entry": 4573.0985,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4572.37,
              "high": 4573.145,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4567.71,
              "high": 4573.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4566.92, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4566.92,
      "stop": 4570.965,
      "target": 4554.785,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-01T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4560.32,
          "impulse_high": 4570.965,
          "fib_entry_level": "62%",
          "entry": 4566.9199,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4597.859,
      "stop": 4603.27,
      "target": 4581.625,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4589.03,
          "impulse_high": 4603.27,
          "fib_entry_level": "62%",
          "entry": 4597.8588,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4623.208,
      "stop": 4630.725,
      "target": 4608.173,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4615.69,
          "impulse_high": 4630.725,
          "fib_entry_level": "50%",
          "entry": 4623.2075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4615.45,
              "high": 4624.43,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4625.012,
      "stop": 4630.725,
      "target": 4607.872,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4615.69,
          "impulse_high": 4630.725,
          "fib_entry_level": "62%",
          "entry": 4625.0117,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4623.735,
              "high": 4627.27,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4618.093,
      "stop": 4624.81,
      "target": 4604.658,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4611.375,
          "impulse_high": 4624.81,
          "fib_entry_level": "50%",
          "entry": 4618.092500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4615.45,
              "high": 4624.43,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-01T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-01T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4619.705,
      "stop": 4624.81,
      "target": 4604.389,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-01T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-01",
        "timestamp": "2026-05-01T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4611.375,
          "impulse_high": 4624.81,
          "fib_entry_level": "62%",
          "entry": 4619.7047,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4615.45,
              "high": 4624.43,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-03T22-30-00Z_short_breaker_continuation",
      "timestamp": "2026-05-03T22:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4619.94,
      "stop": 4629.465,
      "target": 4600.89,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-03T22-30-00Z_short_breaker_continuation",
        "date": "2026-05-03",
        "timestamp": "2026-05-03T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4629.465,
          "entry": 4619.9400000000005,
          "stop": 4629.465,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4615.45,
              "high": 4624.43,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4617.63,
              "high": 4618.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4660.585,
            "PDL": 4560.32,
            "PWH": 4729.965,
            "PWL": 4510.095
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4608.298,
      "stop": 4614.77,
      "target": 4595.353,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-04T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4601.825,
          "impulse_high": 4614.77,
          "fib_entry_level": "50%",
          "entry": 4608.297500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4604.935,
              "high": 4613.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4609.851,
      "stop": 4614.77,
      "target": 4595.094,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-04T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4601.825,
          "impulse_high": 4614.77,
          "fib_entry_level": "62%",
          "entry": 4609.8509,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4604.935,
              "high": 4613.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4605.173,
      "stop": 4614.165,
      "target": 4587.188,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-04T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4596.18,
          "impulse_high": 4614.165,
          "fib_entry_level": "50%",
          "entry": 4605.172500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4604.935,
              "high": 4613.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4607.331,
      "stop": 4614.165,
      "target": 4586.828,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-04T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4596.18,
          "impulse_high": 4614.165,
          "fib_entry_level": "62%",
          "entry": 4607.3307,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4604.935,
              "high": 4613.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4601.994,
      "stop": 4608.365,
      "target": 4582.882,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-04T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4591.6,
          "impulse_high": 4608.365,
          "fib_entry_level": "62%",
          "entry": 4601.9943,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4591.426, planned_rr=3.0, touch=2026-05-29T15:10:00Z, outcome=tp_first",
      "entry": 4591.426,
      "stop": 4595.71,
      "target": 4578.572,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T15:10:00Z",
      "outcome_time": "2026-05-29T15:25:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4584.435,
          "impulse_high": 4595.71,
          "fib_entry_level": "62%",
          "entry": 4591.4255,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4584.635, planned_rr=2.0, touch=2026-05-29T15:05:00Z, outcome=sl_first",
      "entry": 4584.635,
      "stop": 4591.055,
      "target": 4571.795,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4578.215,
          "impulse_high": 4591.055,
          "fib_entry_level": "50%",
          "entry": 4584.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4582.92,
              "high": 4588.35,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4556.775, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4556.775,
      "stop": 4576.03,
      "target": 4518.265,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4537.52,
          "impulse_high": 4576.03,
          "fib_entry_level": "50%",
          "entry": 4556.775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4545.23,
              "high": 4572.095,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4561.396, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4561.396,
      "stop": 4576.03,
      "target": 4517.495,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T10-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4537.52,
          "impulse_high": 4576.03,
          "fib_entry_level": "62%",
          "entry": 4561.3962,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4545.23,
              "high": 4572.095,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T14-15-00Z_short_breaker_continuation",
      "timestamp": "2026-05-04T14:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4568.125, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4568.125,
      "stop": 4582.59,
      "target": 4539.195,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T14-15-00Z_short_breaker_continuation",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4582.59,
          "entry": 4568.125,
          "stop": 4582.59,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.2,
              "high": 4570.05,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4555.895,
              "high": 4559.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4540.271, planned_rr=3.0, touch=2026-05-29T10:35:00Z, outcome=sl_first",
      "entry": 4540.271,
      "stop": 4555.895,
      "target": 4493.4,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4514.78,
          "impulse_high": 4555.895,
          "fib_entry_level": "62%",
          "entry": 4540.2713,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4527.027, planned_rr=3.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4527.027,
      "stop": 4535.235,
      "target": 4502.403,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T15-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4513.635,
          "impulse_high": 4535.235,
          "fib_entry_level": "62%",
          "entry": 4527.027,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4525.76,
              "high": 4527.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-04T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-04T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4516.364, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4516.364,
      "stop": 4525.76,
      "target": 4488.178,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T07:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-04T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-04",
        "timestamp": "2026-05-04T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4501.035,
          "impulse_high": 4525.76,
          "fib_entry_level": "62%",
          "entry": 4516.3645,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4629.465,
            "PDL": 4501.035,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4522.54, planned_rr=3.0, touch=2026-05-29T06:50:00Z, outcome=sl_first",
      "entry": 4522.54,
      "stop": 4527.985,
      "target": 4506.203,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:50:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4513.655,
          "impulse_high": 4527.985,
          "fib_entry_level": "62%",
          "entry": 4522.5396,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4538.503, planned_rr=2.0, touch=2026-05-29T09:50:00Z, outcome=sl_first",
      "entry": 4538.503,
      "stop": 4531.47,
      "target": 4552.568,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:50:00Z",
      "outcome_time": "2026-05-29T09:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4531.47,
          "impulse_high": 4545.535,
          "fib_entry_level": "50%",
          "entry": 4538.5025000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4535.76,
              "high": 4540.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4536.815, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4536.815,
      "stop": 4531.47,
      "target": 4552.849,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T09:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4531.47,
          "impulse_high": 4545.535,
          "fib_entry_level": "62%",
          "entry": 4536.8147,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4535.76,
              "high": 4540.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4544.38, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4544.38,
      "stop": 4539.71,
      "target": 4558.391,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4539.71,
          "impulse_high": 4552.0,
          "fib_entry_level": "62%",
          "entry": 4544.3802,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4540.708, planned_rr=3.0, touch=2026-05-29T10:35:00Z, outcome=tp_first",
      "entry": 4540.708,
      "stop": 4544.88,
      "target": 4528.19,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T11:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4533.9,
          "impulse_high": 4544.88,
          "fib_entry_level": "62%",
          "entry": 4540.7076,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4550.681, planned_rr=3.0, touch=2026-05-29T14:05:00Z, outcome=sl_first",
      "entry": 4550.681,
      "stop": 4547.795,
      "target": 4559.339,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4547.795,
          "impulse_high": 4555.39,
          "fib_entry_level": "62%",
          "entry": 4550.6811,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4552.682, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4552.682,
      "stop": 4548.46,
      "target": 4565.347,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T08-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4548.46,
          "impulse_high": 4559.57,
          "fib_entry_level": "62%",
          "entry": 4552.6818,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T11-00-00Z_long_breaker_continuation",
      "timestamp": "2026-05-05T11:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4553.485, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4553.485,
      "stop": 4539.96,
      "target": 4580.535,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T11-00-00Z_long_breaker_continuation",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4539.96,
          "entry": 4553.485000000001,
          "stop": 4539.96,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4553.34,
              "high": 4553.63,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4545.895,
              "high": 4549.845,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T11-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-05T11:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4553.485, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4553.485,
      "stop": 4539.96,
      "target": 4580.535,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T11-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4539.96,
          "entry": 4553.485000000001,
          "stop": 4539.96,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4553.34,
              "high": 4553.63,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4545.895,
              "high": 4549.845,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T11-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-05T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4552.88, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4552.88,
      "stop": 4539.96,
      "target": 4578.72,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T11-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4539.96,
          "entry": 4552.88,
          "stop": 4539.96,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4559.995, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4559.995,
      "stop": 4555.21,
      "target": 4569.565,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4555.21,
          "impulse_high": 4564.78,
          "fib_entry_level": "50%",
          "entry": 4559.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4559.26,
              "high": 4564.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4558.847, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4558.847,
      "stop": 4555.21,
      "target": 4569.756,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4555.21,
          "impulse_high": 4564.78,
          "fib_entry_level": "62%",
          "entry": 4558.8466,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4557.82,
              "high": 4559.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4567.735, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4567.735,
      "stop": 4561.155,
      "target": 4580.895,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4561.155,
          "impulse_high": 4574.315,
          "fib_entry_level": "50%",
          "entry": 4567.735,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4561.775,
              "high": 4568.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4566.156, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4566.156,
      "stop": 4561.155,
      "target": 4581.158,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T12-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4561.155,
          "impulse_high": 4574.315,
          "fib_entry_level": "62%",
          "entry": 4566.1557999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4561.775,
              "high": 4568.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4571.602, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4571.602,
      "stop": 4574.595,
      "target": 4562.625,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4566.72,
          "impulse_high": 4574.595,
          "fib_entry_level": "62%",
          "entry": 4571.6025,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T12-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-05T12:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4567.145, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4567.145,
      "stop": 4574.595,
      "target": 4552.245,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T12-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4574.595,
          "entry": 4567.145,
          "stop": 4574.595,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4572.688, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4572.688,
      "stop": 4564.42,
      "target": 4589.222,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4564.42,
          "impulse_high": 4580.955,
          "fib_entry_level": "50%",
          "entry": 4572.6875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4568.59,
              "high": 4576.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4570.703, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4570.703,
      "stop": 4564.42,
      "target": 4589.553,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4564.42,
          "impulse_high": 4580.955,
          "fib_entry_level": "62%",
          "entry": 4570.7033,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4568.59,
              "high": 4576.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4573.821, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4573.821,
      "stop": 4565.985,
      "target": 4597.327,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4565.985,
          "impulse_high": 4586.605,
          "fib_entry_level": "62%",
          "entry": 4573.8206,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4568.59,
              "high": 4576.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T14-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-05T14:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Short entry=4584.065, planned_rr=2.0, touch=2026-05-29T15:05:00Z, outcome=ambiguous_same_bar",
      "entry": 4584.065,
      "stop": 4586.605,
      "target": 4578.985,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T14-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4586.605,
          "entry": 4584.065,
          "stop": 4586.605,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T22-15-00Z_long_breaker_continuation",
      "timestamp": "2026-05-05T22:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4560.31, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4560.31,
      "stop": 4546.565,
      "target": 4587.8,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T22-15-00Z_long_breaker_continuation",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4546.565,
          "entry": 4560.3099999999995,
          "stop": 4546.565,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4551.055,
              "high": 4569.565,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4577.46,
              "high": 4582.18,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4580.067, planned_rr=2.0, touch=2026-05-29T15:05:00Z, outcome=sl_first",
      "entry": 4580.067,
      "stop": 4569.565,
      "target": 4601.072,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4569.565,
          "impulse_high": 4590.57,
          "fib_entry_level": "50%",
          "entry": 4580.067499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4577.46,
              "high": 4582.18,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4586.712, planned_rr=3.0, touch=2026-05-29T15:05:00Z, outcome=ambiguous_same_bar",
      "entry": 4586.712,
      "stop": 4589.49,
      "target": 4578.379,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4582.18,
          "impulse_high": 4589.49,
          "fib_entry_level": "62%",
          "entry": 4586.7122,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4590.36, planned_rr=2.0, touch=2026-05-29T15:10:00Z, outcome=sl_first",
      "entry": 4590.36,
      "stop": 4584.72,
      "target": 4601.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:10:00Z",
      "outcome_time": "2026-05-29T15:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4584.72,
          "impulse_high": 4596.0,
          "fib_entry_level": "50%",
          "entry": 4590.360000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4589.36,
              "high": 4598.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-05T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-05T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4589.006, planned_rr=3.0, touch=2026-05-29T15:05:00Z, outcome=sl_first",
      "entry": 4589.006,
      "stop": 4584.72,
      "target": 4601.866,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-05T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-05",
        "timestamp": "2026-05-05T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4584.72,
          "impulse_high": 4596.0,
          "fib_entry_level": "62%",
          "entry": 4589.0064,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4586.605,
            "PDL": 4513.655,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4614.765,
      "stop": 4609.56,
      "target": 4625.175,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4609.56,
          "impulse_high": 4619.97,
          "fib_entry_level": "50%",
          "entry": 4614.765,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4609.63,
              "high": 4622.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4613.516,
      "stop": 4609.56,
      "target": 4625.383,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4609.56,
          "impulse_high": 4619.97,
          "fib_entry_level": "62%",
          "entry": 4613.5158,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4609.63,
              "high": 4622.855,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4665.95,
      "stop": 4670.55,
      "target": 4652.15,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4658.445,
          "impulse_high": 4670.55,
          "fib_entry_level": "62%",
          "entry": 4665.9501,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T07-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-06T07:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4658.525,
      "stop": 4670.55,
      "target": 4634.475,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T07-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4670.55,
          "entry": 4658.525,
          "stop": 4670.55,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4663.825,
      "stop": 4657.47,
      "target": 4676.535,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4657.47,
          "impulse_high": 4670.18,
          "fib_entry_level": "50%",
          "entry": 4663.825000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4657.07,
              "high": 4666.025,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4660.125,
              "high": 4668.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4674.716,
      "stop": 4670.31,
      "target": 4687.934,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.31,
          "impulse_high": 4681.905,
          "fib_entry_level": "62%",
          "entry": 4674.716100000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4670.64,
              "high": 4675.515,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4684.599,
      "stop": 4693.1,
      "target": 4659.098,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4670.73,
          "impulse_high": 4693.1,
          "fib_entry_level": "62%",
          "entry": 4684.5994,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T12-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-06T12:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4706.163,
      "stop": 4660.435,
      "target": 4797.618,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T12-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4660.435,
          "entry": 4706.1625,
          "stop": 4660.435,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4704.915,
              "high": 4707.41,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4691.26,
              "high": 4692.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T12-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-06T12:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4683.35,
      "stop": 4660.435,
      "target": 4729.18,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T12-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4660.435,
          "entry": 4683.35,
          "stop": 4660.435,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4687.503,
      "stop": 4680.325,
      "target": 4709.038,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4680.325,
          "impulse_high": 4699.215,
          "fib_entry_level": "62%",
          "entry": 4687.5032,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T19-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4690.997,
      "stop": 4686.14,
      "target": 4700.712,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T19-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4686.14,
          "impulse_high": 4695.855,
          "fib_entry_level": "50%",
          "entry": 4690.9974999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4688.175,
              "high": 4695.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T19-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4689.832,
      "stop": 4686.14,
      "target": 4700.907,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T19-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4686.14,
          "impulse_high": 4695.855,
          "fib_entry_level": "62%",
          "entry": 4689.8317,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4688.175,
              "high": 4695.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4695.181,
      "stop": 4692.455,
      "target": 4703.361,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4692.455,
          "impulse_high": 4699.63,
          "fib_entry_level": "62%",
          "entry": 4695.1815,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4696.605,
      "stop": 4699.455,
      "target": 4688.055,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4691.955,
          "impulse_high": 4699.455,
          "fib_entry_level": "62%",
          "entry": 4696.605,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4694.218,
      "stop": 4690.165,
      "target": 4702.323,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4690.165,
          "impulse_high": 4698.27,
          "fib_entry_level": "50%",
          "entry": 4694.217500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4688.175,
              "high": 4695.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4693.245,
      "stop": 4690.165,
      "target": 4702.485,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T22-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4690.165,
          "impulse_high": 4698.27,
          "fib_entry_level": "62%",
          "entry": 4693.2449,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4688.175,
              "high": 4695.06,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4692.005,
              "high": 4693.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4696.63,
      "stop": 4693.67,
      "target": 4702.55,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4693.67,
          "impulse_high": 4699.59,
          "fib_entry_level": "50%",
          "entry": 4696.63,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4691.62,
              "high": 4703.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-06T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-06T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4695.92,
      "stop": 4693.67,
      "target": 4702.668,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-06T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-06",
        "timestamp": "2026-05-06T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4693.67,
          "impulse_high": 4699.59,
          "fib_entry_level": "62%",
          "entry": 4695.9196,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4691.62,
              "high": 4703.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4723.14,
            "PDL": 4546.36,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.087,
      "stop": 4701.545,
      "target": 4687.713,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4692.445,
          "impulse_high": 4701.545,
          "fib_entry_level": "62%",
          "entry": 4698.0869999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T00-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-07T00:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.032,
      "stop": 4701.545,
      "target": 4673.007,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T00-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4701.545,
          "entry": 4692.032499999999,
          "stop": 4701.545,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4691.62,
              "high": 4692.445,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4708.045,
              "high": 4712.725,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T00-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-07T00:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.725,
      "stop": 4701.545,
      "target": 4675.085,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T00-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4701.545,
          "entry": 4692.725,
          "stop": 4701.545,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T01-00-00Z_long_breaker_continuation",
      "timestamp": "2026-05-07T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.673,
      "stop": 4685.275,
      "target": 4707.468,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T01-00-00Z_long_breaker_continuation",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4685.275,
          "entry": 4692.672500000001,
          "stop": 4685.275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4692.005,
              "high": 4693.34,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4691.62,
              "high": 4703.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T01-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-07T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.673,
      "stop": 4685.275,
      "target": 4707.468,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T01-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4685.275,
          "entry": 4692.672500000001,
          "stop": 4685.275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4692.005,
              "high": 4693.34,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4691.62,
              "high": 4703.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-07T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4709.84,
      "stop": 4685.275,
      "target": 4758.97,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T01-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4685.275,
          "entry": 4709.84,
          "stop": 4685.275,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4708.433,
      "stop": 4702.45,
      "target": 4726.382,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4702.45,
          "impulse_high": 4718.195,
          "fib_entry_level": "62%",
          "entry": 4708.4331,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T01-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-07T01:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4713.005,
      "stop": 4718.195,
      "target": 4702.625,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T01-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4718.195,
          "entry": 4713.005,
          "stop": 4718.195,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4733.005,
      "stop": 4716.0,
      "target": 4767.015,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4716.0,
          "impulse_high": 4750.01,
          "fib_entry_level": "50%",
          "entry": 4733.005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4717.96,
              "high": 4735.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4728.924,
      "stop": 4716.0,
      "target": 4767.695,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4716.0,
          "impulse_high": 4750.01,
          "fib_entry_level": "62%",
          "entry": 4728.9238000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4717.96,
              "high": 4735.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4738.664,
      "stop": 4731.53,
      "target": 4760.068,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4731.53,
          "impulse_high": 4750.305,
          "fib_entry_level": "62%",
          "entry": 4738.6645,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4745.766,
      "stop": 4750.66,
      "target": 4731.082,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4737.78,
          "impulse_high": 4750.66,
          "fib_entry_level": "62%",
          "entry": 4745.7656,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4744.625,
      "stop": 4737.445,
      "target": 4758.985,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4737.445,
          "impulse_high": 4751.805,
          "fib_entry_level": "50%",
          "entry": 4744.625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4733.185,
              "high": 4747.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4742.902,
      "stop": 4737.445,
      "target": 4759.272,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4737.445,
          "impulse_high": 4751.805,
          "fib_entry_level": "62%",
          "entry": 4742.9018,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4733.185,
              "high": 4747.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4743.197,
      "stop": 4750.44,
      "target": 4721.469,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4731.38,
          "impulse_high": 4750.44,
          "fib_entry_level": "62%",
          "entry": 4743.1972,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4739.113,
      "stop": 4731.465,
      "target": 4754.408,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4731.465,
          "impulse_high": 4746.76,
          "fib_entry_level": "50%",
          "entry": 4739.1125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4738.255,
              "high": 4739.625,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4733.185,
              "high": 4747.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4737.277,
      "stop": 4731.465,
      "target": 4754.713,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4731.465,
          "impulse_high": 4746.76,
          "fib_entry_level": "62%",
          "entry": 4737.2771,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4733.185,
              "high": 4747.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4757.363,
      "stop": 4751.145,
      "target": 4769.797,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4751.145,
          "impulse_high": 4763.58,
          "fib_entry_level": "50%",
          "entry": 4757.3625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4747.63,
              "high": 4759.14,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4755.87,
      "stop": 4751.145,
      "target": 4770.046,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4751.145,
          "impulse_high": 4763.58,
          "fib_entry_level": "62%",
          "entry": 4755.8703000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4747.63,
              "high": 4759.14,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T14-45-00Z_short_breaker_continuation",
      "timestamp": "2026-05-07T14:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4751.025,
      "stop": 4763.58,
      "target": 4725.915,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T14-45-00Z_short_breaker_continuation",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4763.58,
          "entry": 4751.025,
          "stop": 4763.58,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4747.27,
              "high": 4754.78,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4729.87,
              "high": 4739.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4707.385,
      "stop": 4719.315,
      "target": 4671.595,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T17-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4687.92,
          "impulse_high": 4719.315,
          "fib_entry_level": "62%",
          "entry": 4707.3849,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4706.38,
              "high": 4711.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T17-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4703.464,
      "stop": 4698.045,
      "target": 4719.72,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T17-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4698.045,
          "impulse_high": 4712.305,
          "fib_entry_level": "62%",
          "entry": 4703.4638,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4706.285,
      "stop": 4715.835,
      "target": 4687.185,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4696.735,
          "impulse_high": 4715.835,
          "fib_entry_level": "50%",
          "entry": 4706.285,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4704.24,
              "high": 4709.335,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4708.577,
      "stop": 4715.835,
      "target": 4686.803,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4696.735,
          "impulse_high": 4715.835,
          "fib_entry_level": "62%",
          "entry": 4708.577,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4704.24,
              "high": 4709.335,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-07T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-07T20:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4697.415,
      "stop": 4704.24,
      "target": 4676.941,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-07T20-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-07",
        "timestamp": "2026-05-07T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4686.28,
          "impulse_high": 4704.24,
          "fib_entry_level": "62%",
          "entry": 4697.4151999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4764.905,
            "PDL": 4685.275,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4709.983,
      "stop": 4700.45,
      "target": 4729.048,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4700.45,
          "impulse_high": 4719.515,
          "fib_entry_level": "50%",
          "entry": 4709.9825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4705.965,
              "high": 4711.07,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4705.51,
              "high": 4715.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4707.695,
      "stop": 4700.45,
      "target": 4729.429,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4700.45,
          "impulse_high": 4719.515,
          "fib_entry_level": "62%",
          "entry": 4707.6947,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4705.965,
              "high": 4711.07,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4705.51,
              "high": 4715.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4718.488,
      "stop": 4711.265,
      "target": 4732.932,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4711.265,
          "impulse_high": 4725.71,
          "fib_entry_level": "50%",
          "entry": 4718.4875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4715.38,
              "high": 4721.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4716.754,
      "stop": 4711.265,
      "target": 4733.221,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4711.265,
          "impulse_high": 4725.71,
          "fib_entry_level": "62%",
          "entry": 4716.7541,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4715.38,
              "high": 4721.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4728.328,
      "stop": 4721.76,
      "target": 4741.463,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4721.76,
          "impulse_high": 4734.895,
          "fib_entry_level": "50%",
          "entry": 4728.3275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4712.665,
              "high": 4730.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4726.751,
      "stop": 4721.76,
      "target": 4741.725,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4721.76,
          "impulse_high": 4734.895,
          "fib_entry_level": "62%",
          "entry": 4726.7513,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4712.665,
              "high": 4730.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4715.208,
      "stop": 4711.24,
      "target": 4723.143,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4711.24,
          "impulse_high": 4719.175,
          "fib_entry_level": "50%",
          "entry": 4715.2075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4714.165,
              "high": 4717.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4714.255,
      "stop": 4711.24,
      "target": 4723.301,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4711.24,
          "impulse_high": 4719.175,
          "fib_entry_level": "62%",
          "entry": 4714.2553,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4714.165,
              "high": 4717.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T12-00-00Z_long_breaker_continuation",
      "timestamp": "2026-05-08T12:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4715.898,
      "stop": 4703.945,
      "target": 4739.803,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T12-00-00Z_long_breaker_continuation",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4703.945,
          "entry": 4715.8975,
          "stop": 4703.945,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4714.165,
              "high": 4717.63,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4711.075,
              "high": 4719.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4717.142,
      "stop": 4703.42,
      "target": 4744.587,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4703.42,
          "impulse_high": 4730.865,
          "fib_entry_level": "50%",
          "entry": 4717.1425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4714.165,
              "high": 4717.63,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4711.075,
              "high": 4719.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4713.849,
      "stop": 4703.42,
      "target": 4745.136,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4703.42,
          "impulse_high": 4730.865,
          "fib_entry_level": "62%",
          "entry": 4713.8491,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4711.075,
              "high": 4719.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4722.825,
      "stop": 4719.66,
      "target": 4732.322,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4719.66,
          "impulse_high": 4727.99,
          "fib_entry_level": "62%",
          "entry": 4722.8254,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4733.582,
      "stop": 4726.94,
      "target": 4753.51,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4726.94,
          "impulse_high": 4744.42,
          "fib_entry_level": "62%",
          "entry": 4733.582399999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4727.99,
              "high": 4734.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-08T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-08T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4739.918,
      "stop": 4734.955,
      "target": 4754.806,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-08T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-08",
        "timestamp": "2026-05-08T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4734.955,
          "impulse_high": 4748.015,
          "fib_entry_level": "62%",
          "entry": 4739.9178,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-10T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-10T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4687.535,
      "stop": 4682.08,
      "target": 4703.9,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-10T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-10",
        "timestamp": "2026-05-10T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4682.08,
          "impulse_high": 4696.435,
          "fib_entry_level": "62%",
          "entry": 4687.534900000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-10T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-10T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.169,
      "stop": 4689.18,
      "target": 4701.135,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-10T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-10",
        "timestamp": "2026-05-10T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4689.18,
          "impulse_high": 4697.045,
          "fib_entry_level": "62%",
          "entry": 4692.1687,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4749.58,
            "PDL": 4682.045,
            "PWH": 4764.905,
            "PWL": 4501.035
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4687.367,
      "stop": 4683.685,
      "target": 4698.414,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4683.685,
          "impulse_high": 4693.375,
          "fib_entry_level": "62%",
          "entry": 4687.367200000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4684.239,
      "stop": 4674.635,
      "target": 4713.053,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4674.635,
          "impulse_high": 4699.91,
          "fib_entry_level": "62%",
          "entry": 4684.2395,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4695.842,
      "stop": 4689.885,
      "target": 4713.711,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4689.885,
          "impulse_high": 4705.56,
          "fib_entry_level": "62%",
          "entry": 4695.8415,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T09-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-11T09:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4671.052,
      "stop": 4650.795,
      "target": 4711.567,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T09-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4650.795,
          "entry": 4671.0525,
          "stop": 4650.795,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4670.685,
              "high": 4671.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T09-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-11T09:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4663.035,
      "stop": 4650.795,
      "target": 4687.515,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T09-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4650.795,
          "entry": 4663.035,
          "stop": 4650.795,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4734.707,
      "stop": 4728.025,
      "target": 4754.754,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4728.025,
          "impulse_high": 4745.61,
          "fib_entry_level": "62%",
          "entry": 4734.7073,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4730.518,
      "stop": 4727.03,
      "target": 4740.984,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4727.03,
          "impulse_high": 4736.21,
          "fib_entry_level": "62%",
          "entry": 4730.5184,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4742.215,
      "stop": 4739.075,
      "target": 4748.495,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4739.075,
          "impulse_high": 4745.355,
          "fib_entry_level": "50%",
          "entry": 4742.215,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4742.21,
              "high": 4744.445,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4741.461,
      "stop": 4739.075,
      "target": 4748.621,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4739.075,
          "impulse_high": 4745.355,
          "fib_entry_level": "62%",
          "entry": 4741.4614,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4748.739,
      "stop": 4744.445,
      "target": 4761.621,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4744.445,
          "impulse_high": 4755.745,
          "fib_entry_level": "62%",
          "entry": 4748.739,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-11T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-11T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4760.957,
      "stop": 4755.54,
      "target": 4777.208,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-11T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-11",
        "timestamp": "2026-05-11T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4755.54,
          "impulse_high": 4769.795,
          "fib_entry_level": "62%",
          "entry": 4760.9569,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4748.95,
            "PDL": 4648.09,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4699.195,
      "stop": 4695.625,
      "target": 4709.905,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4695.625,
          "impulse_high": 4705.02,
          "fib_entry_level": "62%",
          "entry": 4699.1951,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4702.549,
      "stop": 4698.77,
      "target": 4713.886,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4698.77,
          "impulse_high": 4708.715,
          "fib_entry_level": "62%",
          "entry": 4702.5491,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4695.039,
      "stop": 4691.805,
      "target": 4704.74,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4691.805,
          "impulse_high": 4700.315,
          "fib_entry_level": "62%",
          "entry": 4695.0388,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.273,
      "stop": 4709.025,
      "target": 4676.768,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4687.52,
          "impulse_high": 4709.025,
          "fib_entry_level": "50%",
          "entry": 4698.2725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4694.475,
              "high": 4699.2,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4695.57,
              "high": 4700.625,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4683.855,
              "high": 4701.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4700.853,
      "stop": 4709.025,
      "target": 4676.337,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4687.52,
          "impulse_high": 4709.025,
          "fib_entry_level": "62%",
          "entry": 4700.8531,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4700.625,
              "high": 4711.68,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4683.855,
              "high": 4701.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4690.725,
      "stop": 4683.855,
      "target": 4711.337,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4683.855,
          "impulse_high": 4701.935,
          "fib_entry_level": "62%",
          "entry": 4690.7254,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4689.205,
      "stop": 4701.53,
      "target": 4664.555,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4676.88,
          "impulse_high": 4701.53,
          "fib_entry_level": "50%",
          "entry": 4689.205,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4683.855,
              "high": 4701.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.163,
      "stop": 4701.53,
      "target": 4664.062,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4676.88,
          "impulse_high": 4701.53,
          "fib_entry_level": "62%",
          "entry": 4692.163,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4683.855,
              "high": 4701.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4683.443,
      "stop": 4676.215,
      "target": 4705.125,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4676.215,
          "impulse_high": 4695.235,
          "fib_entry_level": "62%",
          "entry": 4683.4426,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T14-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-12T14:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4692.89,
      "stop": 4676.215,
      "target": 4726.24,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T14-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4676.215,
          "entry": 4692.89,
          "stop": 4676.215,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-12T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4679.664,
      "stop": 4685.86,
      "target": 4661.076,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4669.555,
          "impulse_high": 4685.86,
          "fib_entry_level": "62%",
          "entry": 4679.6641,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-12T14-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-12T14:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4673.0,
      "stop": 4669.555,
      "target": 4679.89,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-12T14-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-12",
        "timestamp": "2026-05-12T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4669.555,
          "entry": 4673.0,
          "stop": 4669.555,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4773.575,
            "PDL": 4638.365,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T00-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-13T00:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4720.45,
      "stop": 4715.07,
      "target": 4731.21,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T00-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4715.07,
          "entry": 4720.45,
          "stop": 4715.07,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4707.641,
      "stop": 4710.58,
      "target": 4698.823,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4702.845,
          "impulse_high": 4710.58,
          "fib_entry_level": "62%",
          "entry": 4707.6407,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T01-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-13T01:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-05-13T01-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4701.705,
          "entry": 4697.3875,
          "stop": 4701.705,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.57,
              "high": 4700.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T01-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-13T01:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4709.07,
      "stop": 4701.705,
      "target": 4723.8,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T01-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4701.705,
          "entry": 4709.07,
          "stop": 4701.705,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4707.185,
      "stop": 4710.85,
      "target": 4696.19,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4701.205,
          "impulse_high": 4710.85,
          "fib_entry_level": "62%",
          "entry": 4707.1849,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T01-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-13T01:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4702.615,
      "stop": 4701.205,
      "target": 4705.435,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T01-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4701.205,
          "entry": 4702.615,
          "stop": 4701.205,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4697.415,
      "stop": 4700.65,
      "target": 4690.945,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4694.18,
          "impulse_high": 4700.65,
          "fib_entry_level": "50%",
          "entry": 4697.415,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4697.4,
              "high": 4698.395,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.191,
      "stop": 4700.65,
      "target": 4690.816,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4694.18,
          "impulse_high": 4700.65,
          "fib_entry_level": "62%",
          "entry": 4698.1914,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4697.4,
              "high": 4698.395,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4696.017,
      "stop": 4691.26,
      "target": 4705.532,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4691.26,
          "impulse_high": 4700.775,
          "fib_entry_level": "50%",
          "entry": 4696.0175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.57,
              "high": 4700.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4694.876,
      "stop": 4691.26,
      "target": 4705.723,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4691.26,
          "impulse_high": 4700.775,
          "fib_entry_level": "62%",
          "entry": 4694.8757,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.57,
              "high": 4700.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T03:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4699.635,
      "stop": 4704.85,
      "target": 4689.205,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T03:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4694.42,
          "impulse_high": 4704.85,
          "fib_entry_level": "50%",
          "entry": 4699.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4699.075,
              "high": 4700.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T03:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4700.887,
      "stop": 4704.85,
      "target": 4688.996,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T03:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4694.42,
          "impulse_high": 4704.85,
          "fib_entry_level": "62%",
          "entry": 4700.8866,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4702.746,
      "stop": 4705.67,
      "target": 4693.974,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4697.975,
          "impulse_high": 4705.67,
          "fib_entry_level": "62%",
          "entry": 4702.7459,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4699.918,
      "stop": 4696.58,
      "target": 4709.933,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T05-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4696.58,
          "impulse_high": 4705.365,
          "fib_entry_level": "62%",
          "entry": 4699.9183,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.57,
              "high": 4700.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4705.622,
      "stop": 4712.29,
      "target": 4692.287,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4698.955,
          "impulse_high": 4712.29,
          "fib_entry_level": "50%",
          "entry": 4705.6224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4705.62,
              "high": 4707.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4707.223,
      "stop": 4712.29,
      "target": 4692.021,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4698.955,
          "impulse_high": 4712.29,
          "fib_entry_level": "62%",
          "entry": 4707.2227,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4705.62,
              "high": 4707.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4697.81,
      "stop": 4702.09,
      "target": 4689.25,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4693.53,
          "impulse_high": 4702.09,
          "fib_entry_level": "50%",
          "entry": 4697.8099999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4694.85,
              "high": 4702.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.837,
      "stop": 4702.09,
      "target": 4689.079,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T09-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4693.53,
          "impulse_high": 4702.09,
          "fib_entry_level": "62%",
          "entry": 4698.8372,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4694.85,
              "high": 4702.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4697.09,
      "stop": 4693.085,
      "target": 4705.1,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4693.085,
          "impulse_high": 4701.095,
          "fib_entry_level": "50%",
          "entry": 4697.09,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.39,
              "high": 4698.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4696.129,
      "stop": 4693.085,
      "target": 4705.26,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T09-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4693.085,
          "impulse_high": 4701.095,
          "fib_entry_level": "62%",
          "entry": 4696.1288,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4694.39,
              "high": 4698.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4701.592,
      "stop": 4705.7,
      "target": 4693.377,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4697.485,
          "impulse_high": 4705.7,
          "fib_entry_level": "50%",
          "entry": 4701.5925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4694.85,
              "high": 4702.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4688.86,
      "stop": 4694.405,
      "target": 4677.77,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4683.315,
          "impulse_high": 4694.405,
          "fib_entry_level": "50%",
          "entry": 4688.86,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4687.64,
              "high": 4693.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4690.191,
      "stop": 4694.405,
      "target": 4677.548,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4683.315,
          "impulse_high": 4694.405,
          "fib_entry_level": "62%",
          "entry": 4690.190799999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4687.64,
              "high": 4693.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4686.511,
      "stop": 4683.57,
      "target": 4695.335,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4683.57,
          "impulse_high": 4691.31,
          "fib_entry_level": "62%",
          "entry": 4686.5112,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4685.665,
              "high": 4686.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4693.497,
      "stop": 4686.97,
      "target": 4706.552,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4686.97,
          "impulse_high": 4700.025,
          "fib_entry_level": "50%",
          "entry": 4693.4974999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4691.815,
              "high": 4694.69,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4691.931,
      "stop": 4686.97,
      "target": 4706.814,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4686.97,
          "impulse_high": 4700.025,
          "fib_entry_level": "62%",
          "entry": 4691.9309,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4691.815,
              "high": 4694.69,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4694.182,
      "stop": 4690.985,
      "target": 4700.578,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4690.985,
          "impulse_high": 4697.38,
          "fib_entry_level": "50%",
          "entry": 4694.1825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4693.965,
              "high": 4695.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-13T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-13T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4693.415,
      "stop": 4690.985,
      "target": 4700.705,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-13T22-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-13",
        "timestamp": "2026-05-13T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4690.985,
          "impulse_high": 4697.38,
          "fib_entry_level": "62%",
          "entry": 4693.4151,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4689.06,
              "high": 4693.965,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4727.03,
            "PDL": 4669.525,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4700.604,
      "stop": 4697.63,
      "target": 4709.524,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4697.63,
          "impulse_high": 4705.455,
          "fib_entry_level": "62%",
          "entry": 4700.6035,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4702.315,
      "stop": 4699.57,
      "target": 4710.552,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4699.57,
          "impulse_high": 4706.795,
          "fib_entry_level": "62%",
          "entry": 4702.3155,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4695.82,
      "stop": 4707.15,
      "target": 4673.16,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4684.49,
          "impulse_high": 4707.15,
          "fib_entry_level": "50%",
          "entry": 4695.82,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4695.495,
              "high": 4699.57,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.539,
      "stop": 4707.15,
      "target": 4672.707,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4684.49,
          "impulse_high": 4707.15,
          "fib_entry_level": "62%",
          "entry": 4698.539199999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4697.665,
              "high": 4699.125,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4695.495,
              "high": 4699.57,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T01-00-00Z_short_breaker_continuation",
      "timestamp": "2026-05-14T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.395,
      "stop": 4707.15,
      "target": 4680.885,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T01-00-00Z_short_breaker_continuation",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4707.15,
          "entry": 4698.395,
          "stop": 4707.15,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4697.665,
              "high": 4699.125,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4695.495,
              "high": 4699.57,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T01-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-14T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.395,
      "stop": 4707.15,
      "target": 4680.885,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T01-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4707.15,
          "entry": 4698.395,
          "stop": 4707.15,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4697.665,
              "high": 4699.125,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4695.495,
              "high": 4699.57,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T01-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-14T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4689.25,
      "stop": 4707.15,
      "target": 4653.45,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T01-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4707.15,
          "entry": 4689.25,
          "stop": 4707.15,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4689.926,
      "stop": 4687.15,
      "target": 4698.254,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4687.15,
          "impulse_high": 4694.455,
          "fib_entry_level": "62%",
          "entry": 4689.9259,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4686.895,
      "stop": 4693.58,
      "target": 4673.525,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4680.21,
          "impulse_high": 4693.58,
          "fib_entry_level": "50%",
          "entry": 4686.895,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4681.74,
              "high": 4693.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4688.499,
      "stop": 4693.58,
      "target": 4673.258,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4680.21,
          "impulse_high": 4693.58,
          "fib_entry_level": "62%",
          "entry": 4688.4994,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4681.74,
              "high": 4693.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4687.595,
      "stop": 4681.74,
      "target": 4699.305,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4681.74,
          "impulse_high": 4693.45,
          "fib_entry_level": "50%",
          "entry": 4687.594999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4686.19,
      "stop": 4681.74,
      "target": 4699.539,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4681.74,
          "impulse_high": 4693.45,
          "fib_entry_level": "62%",
          "entry": 4686.1898,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4683.837,
      "stop": 4691.755,
      "target": 4668.002,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4675.92,
          "impulse_high": 4691.755,
          "fib_entry_level": "50%",
          "entry": 4683.8375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4681.74,
              "high": 4693.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4685.738,
      "stop": 4691.755,
      "target": 4667.686,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4675.92,
          "impulse_high": 4691.755,
          "fib_entry_level": "62%",
          "entry": 4685.7377,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4681.74,
              "high": 4693.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4694.753,
      "stop": 4681.96,
      "target": 4720.338,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4681.96,
          "impulse_high": 4707.545,
          "fib_entry_level": "50%",
          "entry": 4694.7525000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4691.682,
      "stop": 4681.96,
      "target": 4720.849,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T04-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4681.96,
          "impulse_high": 4707.545,
          "fib_entry_level": "62%",
          "entry": 4691.6823,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4700.93,
      "stop": 4695.07,
      "target": 4712.65,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4695.07,
          "impulse_high": 4706.79,
          "fib_entry_level": "50%",
          "entry": 4700.93,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4694.685,
              "high": 4702.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4699.524,
      "stop": 4695.07,
      "target": 4712.884,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T07-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4695.07,
          "impulse_high": 4706.79,
          "fib_entry_level": "62%",
          "entry": 4699.5235999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4682.765,
              "high": 4701.315,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4694.685,
              "high": 4702.435,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4702.499,
      "stop": 4709.58,
      "target": 4681.255,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4690.945,
          "impulse_high": 4709.58,
          "fib_entry_level": "62%",
          "entry": 4702.4987,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4701.25,
              "high": 4702.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4696.792,
      "stop": 4692.42,
      "target": 4709.908,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4692.42,
          "impulse_high": 4703.925,
          "fib_entry_level": "62%",
          "entry": 4696.7919,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4699.952,
      "stop": 4696.015,
      "target": 4711.762,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4696.015,
          "impulse_high": 4706.375,
          "fib_entry_level": "62%",
          "entry": 4699.9518,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4698.353,
      "stop": 4704.555,
      "target": 4679.749,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4688.235,
          "impulse_high": 4704.555,
          "fib_entry_level": "62%",
          "entry": 4698.3534,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4680.993,
      "stop": 4689.705,
      "target": 4654.859,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4666.78,
          "impulse_high": 4689.705,
          "fib_entry_level": "62%",
          "entry": 4680.9935,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4682.563,
      "stop": 4677.815,
      "target": 4696.807,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4677.815,
          "impulse_high": 4690.31,
          "fib_entry_level": "62%",
          "entry": 4682.5631,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4686.173,
      "stop": 4690.41,
      "target": 4673.462,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4679.26,
          "impulse_high": 4690.41,
          "fib_entry_level": "62%",
          "entry": 4686.173,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4660.562,
      "stop": 4665.52,
      "target": 4650.647,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4655.605,
          "impulse_high": 4665.52,
          "fib_entry_level": "50%",
          "entry": 4660.5625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4659.125,
              "high": 4663.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T19:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4661.752,
      "stop": 4665.52,
      "target": 4650.449,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T19-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T19:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4655.605,
          "impulse_high": 4665.52,
          "fib_entry_level": "62%",
          "entry": 4661.7523,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4659.125,
              "high": 4663.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4660.122,
      "stop": 4655.775,
      "target": 4668.817,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4655.775,
          "impulse_high": 4664.47,
          "fib_entry_level": "50%",
          "entry": 4660.1224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4658.735,
              "high": 4663.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-14T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4659.079,
      "stop": 4655.775,
      "target": 4668.991,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4655.775,
          "impulse_high": 4664.47,
          "fib_entry_level": "62%",
          "entry": 4659.0791,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4658.735,
              "high": 4663.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T23-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-14T23:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4661.247,
      "stop": 4665.445,
      "target": 4652.852,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T23-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4665.445,
          "entry": 4661.2474999999995,
          "stop": 4665.445,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4659.125,
              "high": 4663.37,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4650.975,
              "high": 4653.26,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T23-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-14T23:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4657.455,
      "stop": 4646.85,
      "target": 4678.665,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T23-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4646.85,
          "entry": 4657.455,
          "stop": 4646.85,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-14T23-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-14T23:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4657.455,
      "stop": 4665.445,
      "target": 4641.475,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-14T23-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-14",
        "timestamp": "2026-05-14T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4665.445,
          "entry": 4657.455,
          "stop": 4665.445,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4718.88,
            "PDL": 4644.31,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4624.279,
      "stop": 4630.735,
      "target": 4604.91,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-15T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4613.745,
          "impulse_high": 4630.735,
          "fib_entry_level": "62%",
          "entry": 4624.2788,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4622.54,
      "stop": 4617.625,
      "target": 4637.286,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-15T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4617.625,
          "impulse_high": 4630.56,
          "fib_entry_level": "62%",
          "entry": 4622.540300000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4622.597,
      "stop": 4631.69,
      "target": 4595.316,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-15T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4607.76,
          "impulse_high": 4631.69,
          "fib_entry_level": "62%",
          "entry": 4622.5966,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4613.646,
      "stop": 4607.76,
      "target": 4631.305,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-15T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4607.76,
          "impulse_high": 4623.25,
          "fib_entry_level": "62%",
          "entry": 4613.6462,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4577.108, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4577.108,
      "stop": 4590.315,
      "target": 4550.693,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4563.9,
          "impulse_high": 4590.315,
          "fib_entry_level": "50%",
          "entry": 4577.1075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4573.51,
              "high": 4581.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4580.277, planned_rr=3.0, touch=2026-05-29T15:05:00Z, outcome=sl_first",
      "entry": 4580.277,
      "stop": 4590.315,
      "target": 4550.164,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:05:00Z",
      "outcome_time": "2026-05-29T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4563.9,
          "impulse_high": 4590.315,
          "fib_entry_level": "62%",
          "entry": 4580.2773,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4573.51,
              "high": 4581.02,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4562.969, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4562.969,
      "stop": 4556.52,
      "target": 4582.314,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4556.52,
          "impulse_high": 4573.49,
          "fib_entry_level": "62%",
          "entry": 4562.9686,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T06-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-15T06:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4576.843, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4576.843,
      "stop": 4556.52,
      "target": 4617.488,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T17:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T06-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4556.52,
          "entry": 4576.842500000001,
          "stop": 4556.52,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4574.395,
              "high": 4579.29,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4576.25, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4576.25,
      "stop": 4566.07,
      "target": 4596.61,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4566.07,
          "impulse_high": 4586.43,
          "fib_entry_level": "50%",
          "entry": 4576.25,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4574.395,
              "high": 4579.29,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4573.807, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4573.807,
      "stop": 4566.07,
      "target": 4597.017,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4566.07,
          "impulse_high": 4586.43,
          "fib_entry_level": "62%",
          "entry": 4573.8068,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4551.357, planned_rr=3.0, touch=2026-05-29T14:05:00Z, outcome=sl_first",
      "entry": 4551.357,
      "stop": 4544.3,
      "target": 4572.526,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4544.3,
          "impulse_high": 4562.87,
          "fib_entry_level": "62%",
          "entry": 4551.3566,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4547.22,
              "high": 4551.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4556.92, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4556.92,
      "stop": 4562.805,
      "target": 4545.15,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4551.035,
          "impulse_high": 4562.805,
          "fib_entry_level": "50%",
          "entry": 4556.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4550.005,
              "high": 4558.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4558.332, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4558.332,
      "stop": 4562.805,
      "target": 4544.915,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4551.035,
          "impulse_high": 4562.805,
          "fib_entry_level": "62%",
          "entry": 4558.3324,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4550.005,
              "high": 4558.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4539.504, planned_rr=3.0, touch=2026-05-29T09:50:00Z, outcome=sl_first",
      "entry": 4539.504,
      "stop": 4551.44,
      "target": 4503.697,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:50:00Z",
      "outcome_time": "2026-05-29T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4520.03,
          "impulse_high": 4551.44,
          "fib_entry_level": "62%",
          "entry": 4539.504199999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T13-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-15T13:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4559.097, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4559.097,
      "stop": 4510.985,
      "target": 4655.323,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-06-01T03:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T13-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4510.985,
          "entry": 4559.0975,
          "stop": 4510.985,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4557.1,
              "high": 4561.095,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4550.6,
              "high": 4550.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T13-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-15T13:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4533.685, planned_rr=2.0, touch=2026-05-29T09:45:00Z, outcome=tp_first",
      "entry": 4533.685,
      "stop": 4510.985,
      "target": 4579.085,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T13-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4510.985,
          "entry": 4533.685,
          "stop": 4510.985,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4550.627, planned_rr=2.0, touch=2026-05-29T14:05:00Z, outcome=sl_first",
      "entry": 4550.627,
      "stop": 4543.105,
      "target": 4565.672,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4543.105,
          "impulse_high": 4558.15,
          "fib_entry_level": "50%",
          "entry": 4550.6275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4550.6,
              "high": 4550.85,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4548.255,
              "high": 4554.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T17:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4548.822, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4548.822,
      "stop": 4543.105,
      "target": 4565.973,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T17-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T17:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4543.105,
          "impulse_high": 4558.15,
          "fib_entry_level": "62%",
          "entry": 4548.822099999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4548.255,
              "high": 4554.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4554.855, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4554.855,
      "stop": 4560.18,
      "target": 4544.205,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4549.53,
          "impulse_high": 4560.18,
          "fib_entry_level": "50%",
          "entry": 4554.855,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4552.825,
              "high": 4556.68,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4549.765,
              "high": 4555.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4549.845, planned_rr=2.0, touch=2026-05-29T14:05:00Z, outcome=tp_first",
      "entry": 4549.845,
      "stop": 4554.59,
      "target": 4540.355,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4545.1,
          "impulse_high": 4554.59,
          "fib_entry_level": "50%",
          "entry": 4549.845,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4549.765,
              "high": 4555.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4550.984, planned_rr=3.0, touch=2026-05-29T14:05:00Z, outcome=tp_first",
      "entry": 4550.984,
      "stop": 4554.59,
      "target": 4540.165,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4545.1,
          "impulse_high": 4554.59,
          "fib_entry_level": "62%",
          "entry": 4550.9838,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4549.765,
              "high": 4555.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4541.417, planned_rr=2.0, touch=2026-05-29T10:35:00Z, outcome=tp_first",
      "entry": 4541.417,
      "stop": 4546.47,
      "target": 4531.312,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T11:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4536.365,
          "impulse_high": 4546.47,
          "fib_entry_level": "50%",
          "entry": 4541.4175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4539.45,
              "high": 4545.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-15T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-15T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4542.63, planned_rr=3.0, touch=2026-05-29T10:35:00Z, outcome=tp_first",
      "entry": 4542.63,
      "stop": 4546.47,
      "target": 4531.11,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T11:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-15T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-15",
        "timestamp": "2026-05-15T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4536.365,
          "impulse_high": 4546.47,
          "fib_entry_level": "62%",
          "entry": 4542.6301,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4539.45,
              "high": 4545.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-17T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-17T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4544.113, planned_rr=2.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4544.113,
      "stop": 4550.05,
      "target": 4532.238,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-17T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-17",
        "timestamp": "2026-05-17T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4538.175,
          "impulse_high": 4550.05,
          "fib_entry_level": "50%",
          "entry": 4544.1125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4539.45,
              "high": 4545.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-17T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-17T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4545.538, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4545.538,
      "stop": 4550.05,
      "target": 4532.0,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-17T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-17",
        "timestamp": "2026-05-17T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4538.175,
          "impulse_high": 4550.05,
          "fib_entry_level": "62%",
          "entry": 4545.5375,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-17T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-17T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4545.924, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4545.924,
      "stop": 4541.03,
      "target": 4560.608,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-17T22-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-17",
        "timestamp": "2026-05-17T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4541.03,
          "impulse_high": 4553.91,
          "fib_entry_level": "62%",
          "entry": 4545.9244,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4665.445,
            "PDL": 4510.985,
            "PWH": 4773.575,
            "PWL": 4510.985
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4535.219, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4535.219,
      "stop": 4542.635,
      "target": 4512.972,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4523.12,
          "impulse_high": 4542.635,
          "fib_entry_level": "62%",
          "entry": 4535.2193,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4526.43, planned_rr=3.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4526.43,
      "stop": 4533.755,
      "target": 4504.457,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4514.48,
          "impulse_high": 4533.755,
          "fib_entry_level": "62%",
          "entry": 4526.4304999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4504.403, planned_rr=3.0, touch=2026-06-01T06:35:00Z, outcome=unresolved",
      "entry": 4504.403,
      "stop": 4519.105,
      "target": 4460.296,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.415,
          "impulse_high": 4519.105,
          "fib_entry_level": "62%",
          "entry": 4504.4028,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4494.217,
      "stop": 4480.41,
      "target": 4535.639,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-18T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.41,
          "impulse_high": 4516.745,
          "fib_entry_level": "62%",
          "entry": 4494.2173,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T00-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-05-18T00:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4514.795, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=tp_first",
      "entry": 4514.795,
      "stop": 4480.41,
      "target": 4583.565,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T00-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4480.41,
          "entry": 4514.795,
          "stop": 4480.41,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4505.993, planned_rr=3.0, touch=2026-06-01T06:20:00Z, outcome=unresolved",
      "entry": 4505.993,
      "stop": 4516.08,
      "target": 4475.732,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4489.535,
          "impulse_high": 4516.08,
          "fib_entry_level": "62%",
          "entry": 4505.9929,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T10-00-00Z_long_breaker_continuation",
      "timestamp": "2026-05-18T10:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4545.95, planned_rr=2.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4545.95,
      "stop": 4535.865,
      "target": 4566.12,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T10-00-00Z_long_breaker_continuation",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4535.865,
          "entry": 4545.95,
          "stop": 4535.865,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4542.325,
              "high": 4549.575,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4540.1,
              "high": 4549.62,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T10-30-00Z_long_breaker_continuation",
      "timestamp": "2026-05-18T10:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4544.86, planned_rr=2.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4544.86,
      "stop": 4532.145,
      "target": 4570.29,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T10-30-00Z_long_breaker_continuation",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4532.145,
          "entry": 4544.860000000001,
          "stop": 4532.145,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4540.1,
              "high": 4549.62,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4531.8,
              "high": 4540.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T10-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-05-18T10:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4544.86, planned_rr=2.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4544.86,
      "stop": 4532.145,
      "target": 4570.29,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T10-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4532.145,
          "entry": 4544.860000000001,
          "stop": 4532.145,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4540.1,
              "high": 4549.62,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4531.8,
              "high": 4540.1,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4551.47, planned_rr=2.0, touch=2026-05-29T14:05:00Z, outcome=sl_first",
      "entry": 4551.47,
      "stop": 4535.77,
      "target": 4582.87,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4535.77,
          "impulse_high": 4567.17,
          "fib_entry_level": "50%",
          "entry": 4551.47,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4545.36,
              "high": 4555.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4547.702, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4547.702,
      "stop": 4535.77,
      "target": 4583.498,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4535.77,
          "impulse_high": 4567.17,
          "fib_entry_level": "62%",
          "entry": 4547.702,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4540.1,
              "high": 4549.62,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4545.36,
              "high": 4555.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4558.905, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4558.905,
      "stop": 4564.595,
      "target": 4541.833,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4549.62,
          "impulse_high": 4564.595,
          "fib_entry_level": "62%",
          "entry": 4558.904500000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4560.07, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4560.07,
      "stop": 4550.305,
      "target": 4579.6,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4550.305,
          "impulse_high": 4569.835,
          "fib_entry_level": "50%",
          "entry": 4560.07,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4555.36,
              "high": 4562.735,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4557.726, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4557.726,
      "stop": 4550.305,
      "target": 4579.991,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4550.305,
          "impulse_high": 4569.835,
          "fib_entry_level": "62%",
          "entry": 4557.7264000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4555.36,
              "high": 4562.735,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4571.64, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=tp_first",
      "entry": 4571.64,
      "stop": 4563.835,
      "target": 4595.056,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4563.835,
          "impulse_high": 4584.375,
          "fib_entry_level": "62%",
          "entry": 4571.6402,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4550.997, planned_rr=2.0, touch=2026-05-29T14:05:00Z, outcome=tp_first",
      "entry": 4550.997,
      "stop": 4563.175,
      "target": 4526.642,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:05:00Z",
      "outcome_time": "2026-05-29T14:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4538.82,
          "impulse_high": 4563.175,
          "fib_entry_level": "50%",
          "entry": 4550.9974999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4548.605,
              "high": 4554.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-18T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4553.92, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4553.92,
      "stop": 4563.175,
      "target": 4526.155,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4538.82,
          "impulse_high": 4563.175,
          "fib_entry_level": "62%",
          "entry": 4553.9201,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4548.605,
              "high": 4554.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T16-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-18T16:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-05-18T16-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4550.82,
          "entry": 4551.7125,
          "stop": 4550.82,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4548.605,
              "high": 4554.82,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-18T16-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-18T16:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4537.235, planned_rr=2.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4537.235,
      "stop": 4550.82,
      "target": 4510.065,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-18T16-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-18",
        "timestamp": "2026-05-18T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4550.82,
          "entry": 4537.235,
          "stop": 4550.82,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4584.375,
            "PDL": 4480.41,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4568.319, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.319,
      "stop": 4572.52,
      "target": 4555.716,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4561.465,
          "impulse_high": 4572.52,
          "fib_entry_level": "62%",
          "entry": 4568.319100000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4563.148, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4563.148,
      "stop": 4568.59,
      "target": 4546.824,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4554.27,
          "impulse_high": 4568.59,
          "fib_entry_level": "62%",
          "entry": 4563.1484,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4559.947, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4559.947,
      "stop": 4564.005,
      "target": 4547.771,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4553.325,
          "impulse_high": 4564.005,
          "fib_entry_level": "62%",
          "entry": 4559.9466,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4553.557, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4553.557,
      "stop": 4558.155,
      "target": 4539.763,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4546.055,
          "impulse_high": 4558.155,
          "fib_entry_level": "62%",
          "entry": 4553.557,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4546.532, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=tp_first",
      "entry": 4546.532,
      "stop": 4549.57,
      "target": 4537.418,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4541.575,
          "impulse_high": 4549.57,
          "fib_entry_level": "62%",
          "entry": 4546.5319,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4543.696, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4543.696,
      "stop": 4548.165,
      "target": 4530.29,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4536.405,
          "impulse_high": 4548.165,
          "fib_entry_level": "62%",
          "entry": 4543.6962,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4536.555, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4536.555,
      "stop": 4543.22,
      "target": 4516.559,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.68,
          "impulse_high": 4543.22,
          "fib_entry_level": "62%",
          "entry": 4536.5548,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4543.456, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4543.456,
      "stop": 4548.01,
      "target": 4529.793,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4536.025,
          "impulse_high": 4548.01,
          "fib_entry_level": "62%",
          "entry": 4543.4557,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4537.668, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4537.668,
      "stop": 4542.42,
      "target": 4523.412,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4529.915,
          "impulse_high": 4542.42,
          "fib_entry_level": "62%",
          "entry": 4537.6681,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4508.77, planned_rr=2.0, touch=2026-06-01T04:45:00Z, outcome=unresolved",
      "entry": 4508.77,
      "stop": 4526.405,
      "target": 4473.5,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-01T04:45:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4491.135,
          "impulse_high": 4526.405,
          "fib_entry_level": "50%",
          "entry": 4508.77,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4495.75,
              "high": 4515.025,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4513.002, planned_rr=3.0, touch=2026-05-29T06:10:00Z, outcome=sl_first",
      "entry": 4513.002,
      "stop": 4526.405,
      "target": 4472.795,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:10:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-19T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.135,
          "impulse_high": 4526.405,
          "fib_entry_level": "62%",
          "entry": 4513.0024,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4495.75,
              "high": 4515.025,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-19T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4483.981,
      "stop": 4495.75,
      "target": 4448.676,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-19T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4464.78,
          "impulse_high": 4495.75,
          "fib_entry_level": "62%",
          "entry": 4483.9814,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-19T23-30-00Z_short_breaker_continuation",
      "timestamp": "2026-05-19T23:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4488.077,
      "stop": 4496.595,
      "target": 4471.042,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-19T23-30-00Z_short_breaker_continuation",
        "date": "2026-05-19",
        "timestamp": "2026-05-19T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4496.595,
          "entry": 4488.077499999999,
          "stop": 4496.595,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4486.08,
              "high": 4490.075,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4496.96,
              "high": 4498.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4589.58,
            "PDL": 4464.78,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T00-15-00Z_short_breaker_continuation",
      "timestamp": "2026-05-20T00:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4497.673,
      "stop": 4502.18,
      "target": 4488.658,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T00-15-00Z_short_breaker_continuation",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4502.18,
          "entry": 4497.672500000001,
          "stop": 4502.18,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4496.96,
              "high": 4498.385,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4477.295,
              "high": 4488.17,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4484.845,
      "stop": 4496.96,
      "target": 4460.615,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4472.73,
          "impulse_high": 4496.96,
          "fib_entry_level": "50%",
          "entry": 4484.844999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.295,
              "high": 4488.17,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4487.753,
      "stop": 4496.96,
      "target": 4460.13,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4472.73,
          "impulse_high": 4496.96,
          "fib_entry_level": "62%",
          "entry": 4487.7526,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.295,
              "high": 4488.17,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4466.695,
      "stop": 4477.295,
      "target": 4445.495,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4456.095,
          "impulse_high": 4477.295,
          "fib_entry_level": "50%",
          "entry": 4466.695,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4466.4,
              "high": 4476.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4469.239,
      "stop": 4477.295,
      "target": 4445.071,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4456.095,
          "impulse_high": 4477.295,
          "fib_entry_level": "62%",
          "entry": 4469.2390000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4466.4,
              "high": 4476.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4472.255,
      "stop": 4483.69,
      "target": 4449.385,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4460.82,
          "impulse_high": 4483.69,
          "fib_entry_level": "50%",
          "entry": 4472.254999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4466.4,
              "high": 4476.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4474.999,
      "stop": 4483.69,
      "target": 4448.928,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4460.82,
          "impulse_high": 4483.69,
          "fib_entry_level": "62%",
          "entry": 4474.9994,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4466.4,
              "high": 4476.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4484.783,
      "stop": 4489.63,
      "target": 4470.242,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T08-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4476.875,
          "impulse_high": 4489.63,
          "fib_entry_level": "62%",
          "entry": 4484.7831,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4479.615,
      "stop": 4483.77,
      "target": 4467.149,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4472.835,
          "impulse_high": 4483.77,
          "fib_entry_level": "62%",
          "entry": 4479.6147,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4499.725,
      "stop": 4505.435,
      "target": 4488.305,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4494.015,
          "impulse_high": 4505.435,
          "fib_entry_level": "50%",
          "entry": 4499.725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4501.095, planned_rr=3.0, touch=2026-06-01T06:45:00Z, outcome=unresolved",
      "entry": 4501.095,
      "stop": 4505.435,
      "target": 4488.077,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:45:00Z",
      "outcome_time": null,
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-20T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4494.015,
          "impulse_high": 4505.435,
          "fib_entry_level": "62%",
          "entry": 4501.0954,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T12-45-00Z_short_breaker_continuation",
      "timestamp": "2026-05-20T12:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4493.568,
      "stop": 4505.435,
      "target": 4469.832,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T12-45-00Z_short_breaker_continuation",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4505.435,
          "entry": 4493.5675,
          "stop": 4505.435,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4493.14,
              "high": 4493.995,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T12-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-20T12:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4493.568,
      "stop": 4505.435,
      "target": 4469.832,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T12-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4505.435,
          "entry": 4493.5675,
          "stop": 4505.435,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4493.14,
              "high": 4493.995,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T13-00-00Z_short_breaker_continuation",
      "timestamp": "2026-05-20T13:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4493.568,
      "stop": 4506.36,
      "target": 4467.983,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T13-00-00Z_short_breaker_continuation",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4506.36,
          "entry": 4493.5675,
          "stop": 4506.36,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4493.14,
              "high": 4493.995,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T13-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-20T13:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4505.425, planned_rr=2.0, touch=2026-06-01T06:20:00Z, outcome=sl_first",
      "entry": 4505.425,
      "stop": 4506.36,
      "target": 4503.555,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": "2026-06-01T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-20T13-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4506.36,
          "entry": 4505.425,
          "stop": 4506.36,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4497.443,
      "stop": 4505.555,
      "target": 4481.217,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4489.33,
          "impulse_high": 4505.555,
          "fib_entry_level": "50%",
          "entry": 4497.4425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4499.39,
      "stop": 4505.555,
      "target": 4480.893,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-20T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4489.33,
          "impulse_high": 4505.555,
          "fib_entry_level": "62%",
          "entry": 4499.3895,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4493.995,
              "high": 4506.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T18-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-20T18:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4542.515, planned_rr=2.0, touch=2026-05-29T10:35:00Z, outcome=tp_first",
      "entry": 4542.515,
      "stop": 4545.16,
      "target": 4537.225,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T10:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-20T18-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4545.16,
          "entry": 4542.515,
          "stop": 4545.16,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4542.8, planned_rr=2.0, touch=2026-05-29T10:35:00Z, outcome=tp_first",
      "entry": 4542.8,
      "stop": 4546.92,
      "target": 4534.56,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T11:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-20T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4538.68,
          "impulse_high": 4546.92,
          "fib_entry_level": "50%",
          "entry": 4542.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4542.18,
              "high": 4544.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-20T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-20T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4543.789, planned_rr=3.0, touch=2026-05-29T14:00:00Z, outcome=sl_first",
      "entry": 4543.789,
      "stop": 4546.92,
      "target": 4534.395,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:00:00Z",
      "outcome_time": "2026-05-29T14:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-20T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-20",
        "timestamp": "2026-05-20T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4538.68,
          "impulse_high": 4546.92,
          "fib_entry_level": "62%",
          "entry": 4543.7888,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4542.18,
              "high": 4544.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4553.045,
            "PDL": 4453.39,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T01-00-00Z_short_breaker_continuation",
      "timestamp": "2026-05-21T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4541.423, planned_rr=2.0, touch=2026-05-29T10:35:00Z, outcome=sl_first",
      "entry": 4541.423,
      "stop": 4560.26,
      "target": 4503.748,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T10:35:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T01-00-00Z_short_breaker_continuation",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4560.26,
          "entry": 4541.422500000001,
          "stop": 4560.26,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4540.665,
              "high": 4542.18,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4542.18,
              "high": 4544.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T01-15-00Z_short_breaker_continuation",
      "timestamp": "2026-05-21T01:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4556.17, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4556.17,
      "stop": 4567.835,
      "target": 4532.84,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T01-15-00Z_short_breaker_continuation",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4567.835,
          "entry": 4556.17,
          "stop": 4567.835,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4553.335,
              "high": 4559.005,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4542.55,
              "high": 4550.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4564.805, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4564.805,
      "stop": 4568.36,
      "target": 4554.14,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4559.005,
          "impulse_high": 4568.36,
          "fib_entry_level": "62%",
          "entry": 4564.8051,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4535.255, planned_rr=2.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4535.255,
      "stop": 4540.66,
      "target": 4524.445,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4529.85,
          "impulse_high": 4540.66,
          "fib_entry_level": "50%",
          "entry": 4535.255,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4531.22,
              "high": 4535.725,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4536.552, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4536.552,
      "stop": 4540.66,
      "target": 4524.229,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4529.85,
          "impulse_high": 4540.66,
          "fib_entry_level": "62%",
          "entry": 4536.5522,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4529.128, planned_rr=2.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4529.128,
      "stop": 4535.24,
      "target": 4516.903,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4523.015,
          "impulse_high": 4535.24,
          "fib_entry_level": "50%",
          "entry": 4529.1275000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4527.3,
              "high": 4529.85,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4530.595, planned_rr=3.0, touch=2026-05-29T09:25:00Z, outcome=sl_first",
      "entry": 4530.595,
      "stop": 4535.24,
      "target": 4516.658,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:25:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4523.015,
          "impulse_high": 4535.24,
          "fib_entry_level": "62%",
          "entry": 4530.5945,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4517.757, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4517.757,
      "stop": 4523.44,
      "target": 4506.392,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T06:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4512.075,
          "impulse_high": 4523.44,
          "fib_entry_level": "50%",
          "entry": 4517.7575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4517.59,
              "high": 4518.18,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4519.121, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4519.121,
      "stop": 4523.44,
      "target": 4506.165,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T06:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.075,
          "impulse_high": 4523.44,
          "fib_entry_level": "62%",
          "entry": 4519.1213,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4510.583, planned_rr=3.0, touch=2026-05-29T06:15:00Z, outcome=sl_first",
      "entry": 4510.583,
      "stop": 4514.755,
      "target": 4498.065,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:15:00Z",
      "outcome_time": "2026-05-29T06:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4503.775,
          "impulse_high": 4514.755,
          "fib_entry_level": "62%",
          "entry": 4510.5826,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4512.037, planned_rr=3.0, touch=2026-05-29T06:10:00Z, outcome=sl_first",
      "entry": 4512.037,
      "stop": 4518.14,
      "target": 4493.729,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:10:00Z",
      "outcome_time": "2026-05-29T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4502.08,
          "impulse_high": 4518.14,
          "fib_entry_level": "62%",
          "entry": 4512.0372,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4536.31, planned_rr=2.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4536.31,
      "stop": 4526.22,
      "target": 4556.49,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4526.22,
          "impulse_high": 4546.4,
          "fib_entry_level": "50%",
          "entry": 4536.3099999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4531.9,
              "high": 4538.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T17:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4533.888, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4533.888,
      "stop": 4526.22,
      "target": 4556.894,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T17-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4526.22,
          "impulse_high": 4546.4,
          "fib_entry_level": "62%",
          "entry": 4533.8884,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4531.9,
              "high": 4538.76,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4539.076, planned_rr=3.0, touch=2026-05-29T09:50:00Z, outcome=tp_first",
      "entry": 4539.076,
      "stop": 4546.165,
      "target": 4517.809,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T09:50:00Z",
      "outcome_time": "2026-05-29T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T18-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4527.51,
          "impulse_high": 4546.165,
          "fib_entry_level": "62%",
          "entry": 4539.0761,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4537.96,
              "high": 4542.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4536.54, planned_rr=2.0, touch=2026-05-29T09:45:00Z, outcome=tp_first",
      "entry": 4536.54,
      "stop": 4540.555,
      "target": 4528.51,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4532.525,
          "impulse_high": 4540.555,
          "fib_entry_level": "50%",
          "entry": 4536.54,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4532.43,
              "high": 4536.625,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4535.8,
              "high": 4541.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-21T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4537.504, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=tp_first",
      "entry": 4537.504,
      "stop": 4540.555,
      "target": 4528.349,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T10:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-21",
        "timestamp": "2026-05-21T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4532.525,
          "impulse_high": 4540.555,
          "fib_entry_level": "62%",
          "entry": 4537.5036,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4535.8,
              "high": 4541.24,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4570.895,
            "PDL": 4488.63,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4533.799, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4533.799,
      "stop": 4538.8,
      "target": 4518.797,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T09:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.64,
          "impulse_high": 4538.8,
          "fib_entry_level": "62%",
          "entry": 4533.7992,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4532.43,
              "high": 4536.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T05-30-00Z_short_breaker_continuation",
      "timestamp": "2026-05-22T05:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4524.79, planned_rr=2.0, touch=2026-05-29T07:35:00Z, outcome=sl_first",
      "entry": 4524.79,
      "stop": 4534.325,
      "target": 4505.72,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T07:35:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T05-30-00Z_short_breaker_continuation",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4534.325,
          "entry": 4524.79,
          "stop": 4534.325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4524.515,
              "high": 4525.065,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4525.065,
              "high": 4534.325,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4524.043, planned_rr=3.0, touch=2026-05-29T06:55:00Z, outcome=sl_first",
      "entry": 4524.043,
      "stop": 4534.225,
      "target": 4493.497,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:55:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4507.43,
          "impulse_high": 4534.225,
          "fib_entry_level": "62%",
          "entry": 4524.0429,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T09-45-00Z_short_breaker_continuation",
      "timestamp": "2026-05-22T09:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4521.122, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4521.122,
      "stop": 4535.96,
      "target": 4491.447,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T09-45-00Z_short_breaker_continuation",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4535.96,
          "entry": 4521.1224999999995,
          "stop": 4535.96,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4520.67,
              "high": 4521.575,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4525.435,
              "high": 4529.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4529.347, planned_rr=2.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4529.347,
      "stop": 4534.23,
      "target": 4519.583,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4524.465,
          "impulse_high": 4534.23,
          "fib_entry_level": "50%",
          "entry": 4529.3475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4525.435,
              "high": 4529.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4530.519, planned_rr=3.0, touch=2026-05-29T09:25:00Z, outcome=sl_first",
      "entry": 4530.519,
      "stop": 4534.23,
      "target": 4519.387,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:25:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4524.465,
          "impulse_high": 4534.23,
          "fib_entry_level": "62%",
          "entry": 4530.5193,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4518.845, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4518.845,
      "stop": 4525.435,
      "target": 4505.665,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T07:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4512.255,
          "impulse_high": 4525.435,
          "fib_entry_level": "50%",
          "entry": 4518.845,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4515.275,
              "high": 4524.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.427, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4520.427,
      "stop": 4525.435,
      "target": 4505.401,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T07:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.255,
          "impulse_high": 4525.435,
          "fib_entry_level": "62%",
          "entry": 4520.426600000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4515.275,
              "high": 4524.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4528.57, planned_rr=2.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4528.57,
      "stop": 4535.96,
      "target": 4513.79,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4521.18,
          "impulse_high": 4535.96,
          "fib_entry_level": "50%",
          "entry": 4528.57,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4525.435,
              "high": 4529.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4530.344, planned_rr=3.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4530.344,
      "stop": 4535.96,
      "target": 4513.494,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4521.18,
          "impulse_high": 4535.96,
          "fib_entry_level": "62%",
          "entry": 4530.3436,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4503.192, planned_rr=2.0, touch=2026-06-01T06:35:00Z, outcome=unresolved",
      "entry": 4503.192,
      "stop": 4513.73,
      "target": 4482.117,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4492.655,
          "impulse_high": 4513.73,
          "fib_entry_level": "50%",
          "entry": 4503.192499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.565,
              "high": 4510.32,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4505.721, planned_rr=3.0, touch=2026-06-01T06:20:00Z, outcome=sl_first",
      "entry": 4505.721,
      "stop": 4513.73,
      "target": 4481.696,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": "2026-06-01T06:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4492.655,
          "impulse_high": 4513.73,
          "fib_entry_level": "62%",
          "entry": 4505.7215,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.565,
              "high": 4510.32,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4521.451, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4521.451,
      "stop": 4526.915,
      "target": 4505.057,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.535,
          "impulse_high": 4526.915,
          "fib_entry_level": "62%",
          "entry": 4521.4506,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T16-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-22T16:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "ICT Sweep + MSS + FVG Short entry=4505.442, planned_rr=2.0, touch=2026-06-01T06:20:00Z, outcome=unresolved",
      "entry": 4505.442,
      "stop": 4526.915,
      "target": 4462.497,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T16-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4526.915,
          "entry": 4505.442499999999,
          "stop": 4526.915,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.565,
              "high": 4510.32,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4517.89,
              "high": 4518.685,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T16-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-22T16:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4515.065, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4515.065,
      "stop": 4526.915,
      "target": 4491.365,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T16-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4526.915,
          "entry": 4515.065,
          "stop": 4526.915,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-22T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-22T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4508.396, planned_rr=3.0, touch=2026-06-01T06:20:00Z, outcome=sl_first",
      "entry": 4508.396,
      "stop": 4510.6,
      "target": 4501.784,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": "2026-06-01T06:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-22T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-22",
        "timestamp": "2026-05-22T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4504.8,
          "impulse_high": 4510.6,
          "fib_entry_level": "62%",
          "entry": 4508.396000000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-24T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-24T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4562.04, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4562.04,
      "stop": 4558.255,
      "target": 4569.61,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-24T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-24",
        "timestamp": "2026-05-24T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4558.255,
          "impulse_high": 4565.825,
          "fib_entry_level": "50%",
          "entry": 4562.04,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4561.22,
              "high": 4565.27,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-24T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-24T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4561.132, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4561.132,
      "stop": 4558.255,
      "target": 4569.761,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-24T22-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-24",
        "timestamp": "2026-05-24T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4558.255,
          "impulse_high": 4565.825,
          "fib_entry_level": "62%",
          "entry": 4561.1316,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-24T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-24T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4570.92, planned_rr=2.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4570.92,
      "stop": 4565.27,
      "target": 4582.22,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-24T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-24",
        "timestamp": "2026-05-24T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4565.27,
          "impulse_high": 4576.57,
          "fib_entry_level": "50%",
          "entry": 4570.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4565.825,
              "high": 4573.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-24T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-24T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4569.564, planned_rr=3.0, touch=2026-05-29T14:55:00Z, outcome=sl_first",
      "entry": 4569.564,
      "stop": 4565.27,
      "target": 4582.446,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:55:00Z",
      "outcome_time": "2026-05-29T14:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-24T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-24",
        "timestamp": "2026-05-24T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4565.27,
          "impulse_high": 4576.57,
          "fib_entry_level": "62%",
          "entry": 4569.564,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4565.825,
              "high": 4573.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-24T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-24T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4573.599, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4573.599,
      "stop": 4578.45,
      "target": 4559.047,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-24T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-24",
        "timestamp": "2026-05-24T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4565.685,
          "impulse_high": 4578.45,
          "fib_entry_level": "62%",
          "entry": 4573.5993,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4545.26,
            "PDL": 4491.93,
            "PWH": 4589.58,
            "PWL": 4453.39
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4569.017, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4569.017,
      "stop": 4562.54,
      "target": 4581.972,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4562.54,
          "impulse_high": 4575.495,
          "fib_entry_level": "50%",
          "entry": 4569.0175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4565.825,
              "high": 4573.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4567.463, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4567.463,
      "stop": 4562.54,
      "target": 4582.232,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4562.54,
          "impulse_high": 4575.495,
          "fib_entry_level": "62%",
          "entry": 4567.4628999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4565.825,
              "high": 4573.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4570.463, planned_rr=3.0, touch=2026-05-29T14:55:00Z, outcome=tp_first",
      "entry": 4570.463,
      "stop": 4574.78,
      "target": 4557.513,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:55:00Z",
      "outcome_time": "2026-05-29T14:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4563.42,
          "impulse_high": 4574.78,
          "fib_entry_level": "62%",
          "entry": 4570.4632,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4564.81, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4564.81,
      "stop": 4561.675,
      "target": 4574.215,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T02-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4561.675,
          "impulse_high": 4569.925,
          "fib_entry_level": "62%",
          "entry": 4564.81,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4560.019, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4560.019,
      "stop": 4563.635,
      "target": 4549.172,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4554.12,
          "impulse_high": 4563.635,
          "fib_entry_level": "62%",
          "entry": 4560.0193,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4559.917, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4559.917,
      "stop": 4556.405,
      "target": 4566.942,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4556.405,
          "impulse_high": 4563.43,
          "fib_entry_level": "50%",
          "entry": 4559.9175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4557.56,
              "high": 4560.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4559.074, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4559.074,
      "stop": 4556.405,
      "target": 4567.083,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T06-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4556.405,
          "impulse_high": 4563.43,
          "fib_entry_level": "62%",
          "entry": 4559.0745,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4557.56,
              "high": 4560.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4557.923, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4557.923,
      "stop": 4561.25,
      "target": 4547.942,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4552.495,
          "impulse_high": 4561.25,
          "fib_entry_level": "62%",
          "entry": 4557.9231,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4558.471, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4558.471,
      "stop": 4561.34,
      "target": 4549.864,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4553.79,
          "impulse_high": 4561.34,
          "fib_entry_level": "62%",
          "entry": 4558.4710000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4558.19,
              "high": 4559.585,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4562.292, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4562.292,
      "stop": 4558.435,
      "target": 4570.007,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4558.435,
          "impulse_high": 4566.15,
          "fib_entry_level": "50%",
          "entry": 4562.2925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4559.12,
              "high": 4564.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4561.367, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4561.367,
      "stop": 4558.435,
      "target": 4570.162,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4558.435,
          "impulse_high": 4566.15,
          "fib_entry_level": "62%",
          "entry": 4561.3667000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4559.12,
              "high": 4564.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T11-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-25T11:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4570.573, planned_rr=2.0, touch=2026-05-29T14:55:00Z, outcome=tp_first",
      "entry": 4570.573,
      "stop": 4577.115,
      "target": 4557.488,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:55:00Z",
      "outcome_time": "2026-05-29T14:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T11-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4577.115,
          "entry": 4570.5725,
          "stop": 4577.115,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4569.455,
              "high": 4571.69,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4561.21,
              "high": 4569.28,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T11-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-25T11:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4569.46, planned_rr=2.0, touch=2026-05-29T14:55:00Z, outcome=sl_first",
      "entry": 4569.46,
      "stop": 4577.115,
      "target": 4554.15,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:55:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T11-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4577.115,
          "entry": 4569.46,
          "stop": 4577.115,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4562.892, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4562.892,
      "stop": 4569.455,
      "target": 4549.767,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4556.33,
          "impulse_high": 4569.455,
          "fib_entry_level": "50%",
          "entry": 4562.8925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4561.21,
              "high": 4569.28,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4564.467, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4564.467,
      "stop": 4569.455,
      "target": 4549.505,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4556.33,
          "impulse_high": 4569.455,
          "fib_entry_level": "62%",
          "entry": 4564.4675,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4561.21,
              "high": 4569.28,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4563.943, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4563.943,
      "stop": 4559.98,
      "target": 4575.834,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4559.98,
          "impulse_high": 4570.41,
          "fib_entry_level": "62%",
          "entry": 4563.9434,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4559.12,
              "high": 4564.75,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4561.21,
              "high": 4564.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4568.795, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.795,
      "stop": 4571.43,
      "target": 4563.525,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4566.16,
          "impulse_high": 4571.43,
          "fib_entry_level": "50%",
          "entry": 4568.795,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.77,
              "high": 4570.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4569.427, planned_rr=3.0, touch=2026-05-29T14:55:00Z, outcome=tp_first",
      "entry": 4569.427,
      "stop": 4571.43,
      "target": 4563.42,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T14:55:00Z",
      "outcome_time": "2026-05-29T14:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4566.16,
          "impulse_high": 4571.43,
          "fib_entry_level": "62%",
          "entry": 4569.4274000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.77,
              "high": 4570.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4567.261, planned_rr=3.0, touch=2026-05-29T14:50:00Z, outcome=sl_first",
      "entry": 4567.261,
      "stop": 4564.325,
      "target": 4576.067,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4564.325,
          "impulse_high": 4572.05,
          "fib_entry_level": "62%",
          "entry": 4567.2605,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4566.77,
              "high": 4567.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4575.965, planned_rr=3.0, touch=2026-05-29T15:00:00Z, outcome=sl_first",
      "entry": 4575.965,
      "stop": 4573.81,
      "target": 4582.428,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T15:00:00Z",
      "outcome_time": "2026-05-29T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4573.81,
          "impulse_high": 4579.48,
          "fib_entry_level": "62%",
          "entry": 4575.9646,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-00-00Z_short_breaker_continuation",
      "timestamp": "2026-05-25T23:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4568.555, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.555,
      "stop": 4579.48,
      "target": 4546.705,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-00-00Z_short_breaker_continuation",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4579.48,
          "entry": 4568.555,
          "stop": 4579.48,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.77,
              "high": 4570.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4568.665,
              "high": 4573.81,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-15-00Z_short_breaker_continuation",
      "timestamp": "2026-05-25T23:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4568.555, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.555,
      "stop": 4580.245,
      "target": 4545.175,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-15-00Z_short_breaker_continuation",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4580.245,
          "entry": 4568.555,
          "stop": 4580.245,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.77,
              "high": 4570.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4568.665,
              "high": 4573.81,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-25T23:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4568.555, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.555,
      "stop": 4580.245,
      "target": 4545.175,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4580.245,
          "entry": 4568.555,
          "stop": 4580.245,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4566.77,
              "high": 4570.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4568.665,
              "high": 4573.81,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-25T23:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4568.41, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=tp_first",
      "entry": 4568.41,
      "stop": 4580.245,
      "target": 4544.74,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4580.245,
          "entry": 4568.41,
          "stop": 4580.245,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-25T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-25T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4562.04, planned_rr=2.0, touch=2026-05-29T14:50:00Z, outcome=ambiguous_same_bar",
      "entry": 4562.04,
      "stop": 4568.665,
      "target": 4548.79,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-05-29T14:50:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-25T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-25",
        "timestamp": "2026-05-25T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4555.415,
          "impulse_high": 4568.665,
          "fib_entry_level": "50%",
          "entry": 4562.04,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4556.84,
              "high": 4563.065,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.21,
            "PDL": 4548.91,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4538.213, planned_rr=3.0, touch=2026-05-29T09:50:00Z, outcome=tp_first",
      "entry": 4538.213,
      "stop": 4544.555,
      "target": 4519.186,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T09:50:00Z",
      "outcome_time": "2026-05-29T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4527.865,
          "impulse_high": 4544.555,
          "fib_entry_level": "62%",
          "entry": 4538.2128,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4537.5,
              "high": 4541.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4530.653, planned_rr=3.0, touch=2026-05-29T09:25:00Z, outcome=sl_first",
      "entry": 4530.653,
      "stop": 4525.415,
      "target": 4546.368,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:25:00Z",
      "outcome_time": "2026-05-29T09:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T07-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.415,
          "impulse_high": 4539.2,
          "fib_entry_level": "62%",
          "entry": 4530.6533,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T07-45-00Z_short_breaker_continuation",
      "timestamp": "2026-05-26T07:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4522.47, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4522.47,
      "stop": 4539.2,
      "target": 4489.01,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T07-45-00Z_short_breaker_continuation",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4539.2,
          "entry": 4522.469999999999,
          "stop": 4539.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4518.275,
              "high": 4526.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4534.547, planned_rr=3.0, touch=2026-05-29T09:45:00Z, outcome=sl_first",
      "entry": 4534.547,
      "stop": 4539.145,
      "target": 4520.753,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:45:00Z",
      "outcome_time": "2026-05-29T09:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4527.045,
          "impulse_high": 4539.145,
          "fib_entry_level": "62%",
          "entry": 4534.5470000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4518.76, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4518.76,
      "stop": 4525.45,
      "target": 4505.38,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T07:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4512.07,
          "impulse_high": 4525.45,
          "fib_entry_level": "50%",
          "entry": 4518.76,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4518.275,
              "high": 4526.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.366, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4520.366,
      "stop": 4525.45,
      "target": 4505.112,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T07:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T09-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.07,
          "impulse_high": 4525.45,
          "fib_entry_level": "62%",
          "entry": 4520.3656,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4518.275,
              "high": 4526.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4527.868, planned_rr=2.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4527.868,
      "stop": 4532.835,
      "target": 4517.933,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4522.9,
          "impulse_high": 4532.835,
          "fib_entry_level": "50%",
          "entry": 4527.8675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4523.925,
              "high": 4531.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4529.06, planned_rr=3.0, touch=2026-05-29T09:10:00Z, outcome=sl_first",
      "entry": 4529.06,
      "stop": 4532.835,
      "target": 4517.734,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T09:10:00Z",
      "outcome_time": "2026-05-29T09:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4522.9,
          "impulse_high": 4532.835,
          "fib_entry_level": "62%",
          "entry": 4529.0597,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4523.925,
              "high": 4531.74,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4516.612, planned_rr=3.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4516.612,
      "stop": 4523.925,
      "target": 4494.673,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T06:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4504.68,
          "impulse_high": 4523.925,
          "fib_entry_level": "62%",
          "entry": 4516.6119,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4515.9,
              "high": 4522.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.78, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4520.78,
      "stop": 4529.26,
      "target": 4503.82,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4512.3,
          "impulse_high": 4529.26,
          "fib_entry_level": "50%",
          "entry": 4520.780000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4515.9,
              "high": 4522.9,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4520.485,
              "high": 4521.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4522.815, planned_rr=3.0, touch=2026-05-29T06:50:00Z, outcome=sl_first",
      "entry": 4522.815,
      "stop": 4529.26,
      "target": 4503.481,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:50:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.3,
          "impulse_high": 4529.26,
          "fib_entry_level": "62%",
          "entry": 4522.8152,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4515.9,
              "high": 4522.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4495.715,
      "stop": 4501.405,
      "target": 4484.335,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-26T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4490.025,
          "impulse_high": 4501.405,
          "fib_entry_level": "50%",
          "entry": 4495.715,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4493.55,
              "high": 4496.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T17:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4497.081,
      "stop": 4501.405,
      "target": 4484.107,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-26T17-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T17:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4490.025,
          "impulse_high": 4501.405,
          "fib_entry_level": "62%",
          "entry": 4497.080599999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-26T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4524.438, planned_rr=3.0, touch=2026-05-29T07:35:00Z, outcome=tp_first",
      "entry": 4524.438,
      "stop": 4528.05,
      "target": 4513.602,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T07:35:00Z",
      "outcome_time": "2026-05-29T08:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4518.545,
          "impulse_high": 4528.05,
          "fib_entry_level": "62%",
          "entry": 4524.4381,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-26T23-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-26T23:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4519.68, planned_rr=2.0, touch=2026-05-29T06:00:00Z, outcome=sl_first",
      "entry": 4519.68,
      "stop": 4528.05,
      "target": 4502.94,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T06:00:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-26T23-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-26",
        "timestamp": "2026-05-26T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4528.05,
          "entry": 4519.68,
          "stop": 4528.05,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4580.245,
            "PDL": 4482.62,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T03:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4502.338, planned_rr=3.0, touch=2026-06-01T06:35:00Z, outcome=sl_first",
      "entry": 4502.338,
      "stop": 4505.665,
      "target": 4492.357,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": "2026-06-01T06:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-27T03-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T03:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4496.91,
          "impulse_high": 4505.665,
          "fib_entry_level": "62%",
          "entry": 4502.3381,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4502.421, planned_rr=3.0, touch=2026-06-01T06:35:00Z, outcome=sl_first",
      "entry": 4502.421,
      "stop": 4508.875,
      "target": 4483.058,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": "2026-06-01T06:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-27T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.89,
          "impulse_high": 4508.875,
          "fib_entry_level": "62%",
          "entry": 4502.420700000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4489.815,
      "stop": 4495.865,
      "target": 4477.715,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4483.765,
          "impulse_high": 4495.865,
          "fib_entry_level": "50%",
          "entry": 4489.8150000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4488.04,
              "high": 4493.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4491.267,
      "stop": 4495.865,
      "target": 4477.473,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4483.765,
          "impulse_high": 4495.865,
          "fib_entry_level": "62%",
          "entry": 4491.267,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4488.04,
              "high": 4493.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4454.888,
      "stop": 4467.01,
      "target": 4430.643,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4442.765,
          "impulse_high": 4467.01,
          "fib_entry_level": "50%",
          "entry": 4454.887500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4453.41,
              "high": 4462.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4457.797,
      "stop": 4467.01,
      "target": 4430.158,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4442.765,
          "impulse_high": 4467.01,
          "fib_entry_level": "62%",
          "entry": 4457.7969,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4453.41,
              "high": 4462.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4446.125,
      "stop": 4452.495,
      "target": 4433.385,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4439.755,
          "impulse_high": 4452.495,
          "fib_entry_level": "50%",
          "entry": 4446.125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4443.48,
              "high": 4453.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4447.654,
      "stop": 4452.495,
      "target": 4433.13,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4439.755,
          "impulse_high": 4452.495,
          "fib_entry_level": "62%",
          "entry": 4447.6538,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4443.48,
              "high": 4453.41,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4434.968,
      "stop": 4444.79,
      "target": 4415.323,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4425.145,
          "impulse_high": 4444.79,
          "fib_entry_level": "50%",
          "entry": 4434.967500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4432.51,
              "high": 4444.325,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4421.4,
              "high": 4437.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4437.325,
      "stop": 4444.79,
      "target": 4414.93,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4425.145,
          "impulse_high": 4444.79,
          "fib_entry_level": "62%",
          "entry": 4437.3249000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4432.51,
              "high": 4444.325,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4421.4,
              "high": 4437.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4425.222,
      "stop": 4439.215,
      "target": 4397.237,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4411.23,
          "impulse_high": 4439.215,
          "fib_entry_level": "50%",
          "entry": 4425.2225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4421.4,
              "high": 4437.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4428.581,
      "stop": 4439.215,
      "target": 4396.678,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4411.23,
          "impulse_high": 4439.215,
          "fib_entry_level": "62%",
          "entry": 4428.5806999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4421.4,
              "high": 4437.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4455.531,
      "stop": 4457.815,
      "target": 4448.68,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4451.805,
          "impulse_high": 4457.815,
          "fib_entry_level": "62%",
          "entry": 4455.531199999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4447.362,
      "stop": 4450.82,
      "target": 4440.447,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4443.905,
          "impulse_high": 4450.82,
          "fib_entry_level": "50%",
          "entry": 4447.362499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4440.385,
              "high": 4450.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-27T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-27T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4448.192,
      "stop": 4450.82,
      "target": 4440.309,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-27T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-27",
        "timestamp": "2026-05-27T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4443.905,
          "impulse_high": 4450.82,
          "fib_entry_level": "62%",
          "entry": 4448.1923,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4440.385,
              "high": 4450.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4528.05,
            "PDL": 4401.63,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T01-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-28T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4455.243,
      "stop": 4459.0,
      "target": 4447.728,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T01-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4459.0,
          "entry": 4455.2425,
          "stop": 4459.0,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4454.97,
              "high": 4455.515,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4449.175,
              "high": 4454.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T01-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-28T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4438.17,
      "stop": 4459.0,
      "target": 4396.51,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T01-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4459.0,
          "entry": 4438.17,
          "stop": 4459.0,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4406.651,
      "stop": 4412.91,
      "target": 4387.876,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4396.44,
          "impulse_high": 4412.91,
          "fib_entry_level": "62%",
          "entry": 4406.6514,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4379.467,
      "stop": 4387.905,
      "target": 4362.592,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4371.03,
          "impulse_high": 4387.905,
          "fib_entry_level": "50%",
          "entry": 4379.4675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4379.42,
              "high": 4382.15,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4369.715,
              "high": 4382.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4381.492,
      "stop": 4387.905,
      "target": 4362.255,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4371.03,
          "impulse_high": 4387.905,
          "fib_entry_level": "62%",
          "entry": 4381.492499999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4379.42,
              "high": 4382.15,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4369.715,
              "high": 4382.4,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4384.584,
      "stop": 4390.67,
      "target": 4366.327,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4374.655,
          "impulse_high": 4390.67,
          "fib_entry_level": "62%",
          "entry": 4384.5842999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4397.058,
      "stop": 4402.53,
      "target": 4380.642,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4388.13,
          "impulse_high": 4402.53,
          "fib_entry_level": "62%",
          "entry": 4397.058,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4387.985,
      "stop": 4393.035,
      "target": 4372.834,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4379.745,
          "impulse_high": 4393.035,
          "fib_entry_level": "62%",
          "entry": 4387.9848,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-28T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-28T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4494.288,
      "stop": 4496.22,
      "target": 4488.491,
      "planned_rr": 3.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-05-28T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-28",
        "timestamp": "2026-05-28T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.135,
          "impulse_high": 4496.22,
          "fib_entry_level": "62%",
          "entry": 4494.2877,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4516.63,
            "PDL": 4366.23,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T01-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-05-29T01:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Short entry=4505.375, planned_rr=2.0, touch=2026-06-01T06:20:00Z, outcome=unresolved",
      "entry": 4505.375,
      "stop": 4520.815,
      "target": 4474.495,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-01T06:20:00Z",
      "outcome_time": null,
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T01-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4520.815,
          "entry": 4505.375,
          "stop": 4520.815,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.042, planned_rr=2.0, touch=2026-05-29T07:05:00Z, outcome=tp_first",
      "entry": 4520.042,
      "stop": 4524.14,
      "target": 4511.847,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T07:05:00Z",
      "outcome_time": "2026-05-29T07:25:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4515.945,
          "impulse_high": 4524.14,
          "fib_entry_level": "50%",
          "entry": 4520.0425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4518.0,
              "high": 4522.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4521.026, planned_rr=3.0, touch=2026-05-29T07:30:00Z, outcome=sl_first",
      "entry": 4521.026,
      "stop": 4524.14,
      "target": 4511.684,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T07:30:00Z",
      "outcome_time": "2026-05-29T07:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4515.945,
          "impulse_high": 4524.14,
          "fib_entry_level": "62%",
          "entry": 4521.025900000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4518.0,
              "high": 4522.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T07-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-05-29T07:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4520.153, planned_rr=2.0, touch=2026-05-29T07:05:00Z, outcome=tp_first",
      "entry": 4520.153,
      "stop": 4524.14,
      "target": 4512.177,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-05-29T07:05:00Z",
      "outcome_time": "2026-05-29T07:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T07-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4524.14,
          "entry": 4520.1525,
          "stop": 4524.14,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4518.0,
              "high": 4522.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4519.5, planned_rr=2.0, touch=2026-05-29T08:05:00Z, outcome=sl_first",
      "entry": 4519.5,
      "stop": 4524.855,
      "target": 4508.79,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T08:05:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4514.145,
          "impulse_high": 4524.855,
          "fib_entry_level": "50%",
          "entry": 4519.5,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4518.0,
              "high": 4522.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4520.785, planned_rr=3.0, touch=2026-05-29T08:05:00Z, outcome=sl_first",
      "entry": 4520.785,
      "stop": 4524.855,
      "target": 4508.576,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T08:05:00Z",
      "outcome_time": "2026-05-29T09:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4514.145,
          "impulse_high": 4524.855,
          "fib_entry_level": "62%",
          "entry": 4520.7852,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4518.0,
              "high": 4522.305,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4536.97, planned_rr=3.0, touch=2026-05-29T11:05:00Z, outcome=tp_first",
      "entry": 4536.97,
      "stop": 4540.665,
      "target": 4525.883,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-05-29T11:05:00Z",
      "outcome_time": "2026-05-29T12:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4530.94,
          "impulse_high": 4540.665,
          "fib_entry_level": "62%",
          "entry": 4536.9695,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4534.292, planned_rr=3.0, touch=2026-05-29T13:40:00Z, outcome=sl_first",
      "entry": 4534.292,
      "stop": 4538.765,
      "target": 4520.875,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T13:40:00Z",
      "outcome_time": "2026-05-29T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4526.995,
          "impulse_high": 4538.765,
          "fib_entry_level": "62%",
          "entry": 4534.2924,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4519.373, planned_rr=3.0, touch=2026-05-29T12:50:00Z, outcome=sl_first",
      "entry": 4519.373,
      "stop": 4523.445,
      "target": 4507.158,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T12:50:00Z",
      "outcome_time": "2026-05-29T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4512.73,
          "impulse_high": 4523.445,
          "fib_entry_level": "62%",
          "entry": 4519.373299999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-29T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-29T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4537.925, planned_rr=3.0, touch=2026-05-29T14:20:00Z, outcome=sl_first",
      "entry": 4537.925,
      "stop": 4545.135,
      "target": 4516.293,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-05-29T14:20:00Z",
      "outcome_time": "2026-05-29T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-29T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-29",
        "timestamp": "2026-05-29T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4526.16,
          "impulse_high": 4545.135,
          "fib_entry_level": "62%",
          "entry": 4537.9245,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-05-31T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-05-31T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4538.287, planned_rr=3.0, touch=2026-06-01T00:00:00Z, outcome=sl_first",
      "entry": 4538.287,
      "stop": 4535.23,
      "target": 4547.458,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T00:00:00Z",
      "outcome_time": "2026-06-01T01:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-05-31T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-05-31",
        "timestamp": "2026-05-31T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4535.23,
          "impulse_high": 4543.275,
          "fib_entry_level": "62%",
          "entry": 4538.2871,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4595.33,
            "PDL": 4488.975,
            "PWH": 4595.33,
            "PWL": 4366.23
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4533.887, planned_rr=2.0, touch=2026-06-01T01:05:00Z, outcome=tp_first",
      "entry": 4533.887,
      "stop": 4541.45,
      "target": 4518.762,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T01:05:00Z",
      "outcome_time": "2026-06-01T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4526.325,
          "impulse_high": 4541.45,
          "fib_entry_level": "50%",
          "entry": 4533.8875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4527.285,
              "high": 4533.93,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4535.702, planned_rr=3.0, touch=2026-06-01T01:20:00Z, outcome=tp_first",
      "entry": 4535.702,
      "stop": 4541.45,
      "target": 4518.46,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T01:20:00Z",
      "outcome_time": "2026-06-01T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4526.325,
          "impulse_high": 4541.45,
          "fib_entry_level": "62%",
          "entry": 4535.702499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4528.747, planned_rr=2.0, touch=2026-06-01T01:50:00Z, outcome=sl_first",
      "entry": 4528.747,
      "stop": 4533.78,
      "target": 4518.682,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T01:50:00Z",
      "outcome_time": "2026-06-01T02:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4523.715,
          "impulse_high": 4533.78,
          "fib_entry_level": "50%",
          "entry": 4528.7474999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4527.285,
              "high": 4533.93,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4525.185,
              "high": 4529.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4529.955, planned_rr=3.0, touch=2026-06-01T01:50:00Z, outcome=sl_first",
      "entry": 4529.955,
      "stop": 4533.78,
      "target": 4518.481,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T01:50:00Z",
      "outcome_time": "2026-06-01T02:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4523.715,
          "impulse_high": 4533.78,
          "fib_entry_level": "62%",
          "entry": 4529.9553,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4527.285,
              "high": 4533.93,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4517.115, planned_rr=2.0, touch=2026-06-01T03:35:00Z, outcome=sl_first",
      "entry": 4517.115,
      "stop": 4524.24,
      "target": 4502.865,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T03:35:00Z",
      "outcome_time": "2026-06-01T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4509.99,
          "impulse_high": 4524.24,
          "fib_entry_level": "50%",
          "entry": 4517.115,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4513.96,
              "high": 4521.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4518.825, planned_rr=3.0, touch=2026-06-01T03:35:00Z, outcome=sl_first",
      "entry": 4518.825,
      "stop": 4524.24,
      "target": 4502.58,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T03:35:00Z",
      "outcome_time": "2026-06-01T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4509.99,
          "impulse_high": 4524.24,
          "fib_entry_level": "62%",
          "entry": 4518.825,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4513.96,
              "high": 4521.465,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4508.33, planned_rr=2.0, touch=2026-06-01T06:35:00Z, outcome=tp_first",
      "entry": 4508.33,
      "stop": 4514.99,
      "target": 4495.01,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": "2026-06-01T07:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4501.67,
          "impulse_high": 4514.99,
          "fib_entry_level": "50%",
          "entry": 4508.33,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4504.98,
              "high": 4516.015,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4509.928, planned_rr=3.0, touch=2026-06-01T06:35:00Z, outcome=tp_first",
      "entry": 4509.928,
      "stop": 4514.99,
      "target": 4494.744,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T06:35:00Z",
      "outcome_time": "2026-06-01T07:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4501.67,
          "impulse_high": 4514.99,
          "fib_entry_level": "62%",
          "entry": 4509.9284,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4504.98,
              "high": 4516.015,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4504.309, planned_rr=3.0, touch=2026-06-01T07:20:00Z, outcome=sl_first",
      "entry": 4504.309,
      "stop": 4500.765,
      "target": 4514.939,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T07:20:00Z",
      "outcome_time": "2026-06-01T07:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4500.765,
          "impulse_high": 4510.09,
          "fib_entry_level": "62%",
          "entry": 4504.3085,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4504.093, planned_rr=3.0, touch=2026-06-01T07:35:00Z, outcome=tp_first",
      "entry": 4504.093,
      "stop": 4507.845,
      "target": 4492.835,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T07:35:00Z",
      "outcome_time": "2026-06-01T07:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4497.97,
          "impulse_high": 4507.845,
          "fib_entry_level": "62%",
          "entry": 4504.092500000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T07-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-01T07:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "ICT Sweep + MSS + FVG Long entry=4516.512, planned_rr=2.0, touch=2026-06-02T04:55:00Z, outcome=unresolved",
      "entry": 4516.512,
      "stop": 4492.59,
      "target": 4564.357,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-02T04:55:00Z",
      "outcome_time": null,
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T07-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4492.59,
          "entry": 4516.5125,
          "stop": 4492.59,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4515.33,
              "high": 4517.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4500.514, planned_rr=3.0, touch=2026-06-01T08:40:00Z, outcome=sl_first",
      "entry": 4500.514,
      "stop": 4504.69,
      "target": 4487.985,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T08:40:00Z",
      "outcome_time": "2026-06-01T09:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4493.7,
          "impulse_high": 4504.69,
          "fib_entry_level": "62%",
          "entry": 4500.5138,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4507.581, planned_rr=3.0, touch=2026-06-01T11:30:00Z, outcome=sl_first",
      "entry": 4507.581,
      "stop": 4504.21,
      "target": 4517.692,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T11:30:00Z",
      "outcome_time": "2026-06-01T12:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T11-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4504.21,
          "impulse_high": 4513.08,
          "fib_entry_level": "62%",
          "entry": 4507.5806,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T11-15-00Z_short_breaker_continuation",
      "timestamp": "2026-06-01T11:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4494.222, planned_rr=2.0, touch=2026-06-01T13:10:00Z, outcome=tp_first",
      "entry": 4494.222,
      "stop": 4513.08,
      "target": 4456.507,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T13:10:00Z",
      "outcome_time": "2026-06-01T13:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T11-15-00Z_short_breaker_continuation",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4513.08,
          "entry": 4494.2225,
          "stop": 4513.08,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4489.79,
              "high": 4498.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4476.15, planned_rr=2.0, touch=2026-06-01T13:20:00Z, outcome=tp_first",
      "entry": 4476.15,
      "stop": 4489.79,
      "target": 4448.87,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T13:20:00Z",
      "outcome_time": "2026-06-01T13:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4462.51,
          "impulse_high": 4489.79,
          "fib_entry_level": "50%",
          "entry": 4476.15,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4459.17,
              "high": 4478.78,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4479.424, planned_rr=3.0, touch=2026-06-01T13:20:00Z, outcome=tp_first",
      "entry": 4479.424,
      "stop": 4489.79,
      "target": 4448.324,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T13:20:00Z",
      "outcome_time": "2026-06-01T14:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.51,
          "impulse_high": 4489.79,
          "fib_entry_level": "62%",
          "entry": 4479.4236,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4461.652, planned_rr=3.0, touch=2026-06-01T13:50:00Z, outcome=sl_first",
      "entry": 4461.652,
      "stop": 4469.805,
      "target": 4437.193,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-01T13:50:00Z",
      "outcome_time": "2026-06-01T15:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4448.35,
          "impulse_high": 4469.805,
          "fib_entry_level": "62%",
          "entry": 4461.6521,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4459.17,
              "high": 4478.78,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4453.298, planned_rr=3.0, touch=2026-06-01T14:05:00Z, outcome=tp_first",
      "entry": 4453.298,
      "stop": 4447.86,
      "target": 4469.611,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T14:05:00Z",
      "outcome_time": "2026-06-01T15:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4447.86,
          "impulse_high": 4462.17,
          "fib_entry_level": "62%",
          "entry": 4453.2978,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T14-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-01T14:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4461.26, planned_rr=2.0, touch=2026-06-01T14:05:00Z, outcome=tp_first",
      "entry": 4461.26,
      "stop": 4447.86,
      "target": 4488.06,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T14:05:00Z",
      "outcome_time": "2026-06-01T17:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T14-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4447.86,
          "entry": 4461.26,
          "stop": 4447.86,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4474.92, planned_rr=2.0, touch=2026-06-01T16:50:00Z, outcome=tp_first",
      "entry": 4474.92,
      "stop": 4467.57,
      "target": 4489.62,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-01T16:50:00Z",
      "outcome_time": "2026-06-01T17:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4467.57,
          "impulse_high": 4482.27,
          "fib_entry_level": "50%",
          "entry": 4474.92,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4471.58,
              "high": 4481.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4473.156, planned_rr=3.0, touch=2026-06-01T16:50:00Z, outcome=tp_first",
      "entry": 4473.156,
      "stop": 4467.57,
      "target": 4489.914,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T16:50:00Z",
      "outcome_time": "2026-06-01T17:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4467.57,
          "impulse_high": 4482.27,
          "fib_entry_level": "62%",
          "entry": 4473.156,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4471.58,
              "high": 4481.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-01T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-01T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4484.857, planned_rr=3.0, touch=2026-06-01T23:35:00Z, outcome=tp_first",
      "entry": 4484.857,
      "stop": 4487.5,
      "target": 4476.928,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-01T23:35:00Z",
      "outcome_time": "2026-06-02T00:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-01T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-01",
        "timestamp": "2026-06-01T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.545,
          "impulse_high": 4487.5,
          "fib_entry_level": "62%",
          "entry": 4484.8571,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4546.27,
            "PDL": 4447.86,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4482.09, planned_rr=3.0, touch=2026-06-02T00:05:00Z, outcome=sl_first",
      "entry": 4482.09,
      "stop": 4485.265,
      "target": 4472.565,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T00:05:00Z",
      "outcome_time": "2026-06-02T00:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4476.91,
          "impulse_high": 4485.265,
          "fib_entry_level": "62%",
          "entry": 4482.0901,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4492.548, planned_rr=3.0, touch=2026-06-02T03:00:00Z, outcome=sl_first",
      "entry": 4492.548,
      "stop": 4497.135,
      "target": 4478.789,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T03:00:00Z",
      "outcome_time": "2026-06-02T03:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4485.065,
          "impulse_high": 4497.135,
          "fib_entry_level": "62%",
          "entry": 4492.5484,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T00-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T00:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4487.125, planned_rr=2.0, touch=2026-06-02T00:40:00Z, outcome=tp_first",
      "entry": 4487.125,
      "stop": 4497.135,
      "target": 4467.105,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-02T00:40:00Z",
      "outcome_time": "2026-06-02T01:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T00-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4497.135,
          "entry": 4487.125,
          "stop": 4497.135,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4485.136, planned_rr=3.0, touch=2026-06-02T01:00:00Z, outcome=tp_first",
      "entry": 4485.136,
      "stop": 4487.775,
      "target": 4477.219,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T01:00:00Z",
      "outcome_time": "2026-06-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T00-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.83,
          "impulse_high": 4487.775,
          "fib_entry_level": "62%",
          "entry": 4485.135899999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4482.843, planned_rr=2.0, touch=2026-06-02T01:05:00Z, outcome=sl_first",
      "entry": 4482.843,
      "stop": 4473.8,
      "target": 4500.928,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T01:05:00Z",
      "outcome_time": "2026-06-02T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4473.8,
          "impulse_high": 4491.885,
          "fib_entry_level": "50%",
          "entry": 4482.842500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4476.91,
              "high": 4485.265,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4480.672, planned_rr=3.0, touch=2026-06-02T01:05:00Z, outcome=sl_first",
      "entry": 4480.672,
      "stop": 4473.8,
      "target": 4501.289,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T01:05:00Z",
      "outcome_time": "2026-06-02T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4473.8,
          "impulse_high": 4491.885,
          "fib_entry_level": "62%",
          "entry": 4480.6723,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4476.91,
              "high": 4485.265,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-02T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4481.087, planned_rr=2.0, touch=2026-06-02T01:05:00Z, outcome=sl_first",
      "entry": 4481.087,
      "stop": 4473.8,
      "target": 4495.662,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T01:05:00Z",
      "outcome_time": "2026-06-02T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4473.8,
          "entry": 4481.0875,
          "stop": 4473.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4476.91,
              "high": 4485.265,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4485.655,
              "high": 4485.785,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4489.93, planned_rr=2.0, touch=2026-06-02T01:10:00Z, outcome=sl_first",
      "entry": 4489.93,
      "stop": 4473.8,
      "target": 4522.19,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T01:10:00Z",
      "outcome_time": "2026-06-02T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4473.8,
          "entry": 4489.93,
          "stop": 4473.8,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4485.671, planned_rr=3.0, touch=2026-06-02T01:35:00Z, outcome=tp_first",
      "entry": 4485.671,
      "stop": 4489.395,
      "target": 4474.499,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T01:35:00Z",
      "outcome_time": "2026-06-02T01:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4479.595,
          "impulse_high": 4489.395,
          "fib_entry_level": "62%",
          "entry": 4485.671,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4475.084, planned_rr=3.0, touch=2026-06-02T01:50:00Z, outcome=sl_first",
      "entry": 4475.084,
      "stop": 4482.485,
      "target": 4452.883,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T01:50:00Z",
      "outcome_time": "2026-06-02T02:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T01-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4463.01,
          "impulse_high": 4482.485,
          "fib_entry_level": "62%",
          "entry": 4475.0845,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4475.719, planned_rr=3.0, touch=2026-06-02T02:10:00Z, outcome=tp_first",
      "entry": 4475.719,
      "stop": 4472.265,
      "target": 4486.082,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T02:10:00Z",
      "outcome_time": "2026-06-02T02:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4472.265,
          "impulse_high": 4481.355,
          "fib_entry_level": "62%",
          "entry": 4475.7192000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4522.55, planned_rr=3.0, touch=2026-06-02T05:50:00Z, outcome=sl_first",
      "entry": 4522.55,
      "stop": 4526.38,
      "target": 4511.058,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T05:50:00Z",
      "outcome_time": "2026-06-02T06:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4516.3,
          "impulse_high": 4526.38,
          "fib_entry_level": "62%",
          "entry": 4522.5496,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4526.042, planned_rr=2.0, touch=2026-06-02T06:20:00Z, outcome=sl_first",
      "entry": 4526.042,
      "stop": 4518.05,
      "target": 4542.027,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T06:20:00Z",
      "outcome_time": "2026-06-02T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T06-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4518.05,
          "impulse_high": 4534.035,
          "fib_entry_level": "50%",
          "entry": 4526.0425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4525.0,
              "high": 4531.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4529.888, planned_rr=2.0, touch=2026-06-02T09:05:00Z, outcome=sl_first",
      "entry": 4529.888,
      "stop": 4525.43,
      "target": 4538.803,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T09:05:00Z",
      "outcome_time": "2026-06-02T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4525.43,
          "impulse_high": 4534.345,
          "fib_entry_level": "50%",
          "entry": 4529.887500000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4525.0,
              "high": 4531.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4528.818, planned_rr=3.0, touch=2026-06-02T09:05:00Z, outcome=sl_first",
      "entry": 4528.818,
      "stop": 4525.43,
      "target": 4538.981,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T09:05:00Z",
      "outcome_time": "2026-06-02T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.43,
          "impulse_high": 4534.345,
          "fib_entry_level": "62%",
          "entry": 4528.8177000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4525.0,
              "high": 4531.87,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-02T09:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4528.435, planned_rr=2.0, touch=2026-06-02T09:05:00Z, outcome=tp_first",
      "entry": 4528.435,
      "stop": 4525.43,
      "target": 4534.445,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-02T09:05:00Z",
      "outcome_time": "2026-06-02T09:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4525.43,
          "entry": 4528.4349999999995,
          "stop": 4525.43,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4525.0,
              "high": 4531.87,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4527.43,
              "high": 4527.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T09:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4534.005, planned_rr=2.0, touch=2026-06-02T09:10:00Z, outcome=sl_first",
      "entry": 4534.005,
      "stop": 4525.43,
      "target": 4551.155,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T09:10:00Z",
      "outcome_time": "2026-06-02T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4525.43,
          "entry": 4534.005,
          "stop": 4525.43,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4531.8, planned_rr=3.0, touch=2026-06-02T09:20:00Z, outcome=tp_first",
      "entry": 4531.8,
      "stop": 4535.76,
      "target": 4519.922,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T09:20:00Z",
      "outcome_time": "2026-06-02T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4525.34,
          "impulse_high": 4535.76,
          "fib_entry_level": "62%",
          "entry": 4531.8004,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T09-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T09:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Long entry=4526.82, planned_rr=2.0, touch=2026-06-02T09:25:00Z, outcome=ambiguous_same_bar",
      "entry": 4526.82,
      "stop": 4525.34,
      "target": 4529.78,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-06-02T09:25:00Z",
      "outcome_time": "2026-06-02T09:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T09-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4525.34,
          "entry": 4526.82,
          "stop": 4525.34,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T11-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4528.88, planned_rr=2.0, touch=2026-06-02T11:10:00Z, outcome=tp_first",
      "entry": 4528.88,
      "stop": 4534.845,
      "target": 4516.95,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-02T11:10:00Z",
      "outcome_time": "2026-06-02T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T11-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4534.845,
          "entry": 4528.88,
          "stop": 4534.845,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T12-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-02T12:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4525.14, planned_rr=2.0, touch=2026-06-02T12:35:00Z, outcome=tp_first",
      "entry": 4525.14,
      "stop": 4521.79,
      "target": 4531.84,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-02T12:35:00Z",
      "outcome_time": "2026-06-02T12:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T12-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4521.79,
          "entry": 4525.14,
          "stop": 4521.79,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4521.32, planned_rr=3.0, touch=2026-06-02T13:05:00Z, outcome=tp_first",
      "entry": 4521.32,
      "stop": 4526.08,
      "target": 4507.042,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T13:05:00Z",
      "outcome_time": "2026-06-02T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4513.555,
          "impulse_high": 4526.08,
          "fib_entry_level": "62%",
          "entry": 4521.3205,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4499.608, planned_rr=3.0, touch=2026-06-02T14:30:00Z, outcome=sl_first",
      "entry": 4499.608,
      "stop": 4505.23,
      "target": 4482.742,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T14:30:00Z",
      "outcome_time": "2026-06-02T14:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4490.435,
          "impulse_high": 4505.23,
          "fib_entry_level": "62%",
          "entry": 4499.6079,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4498.455,
              "high": 4507.065,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4498.44,
              "high": 4501.295,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4499.423, planned_rr=3.0, touch=2026-06-02T14:35:00Z, outcome=sl_first",
      "entry": 4499.423,
      "stop": 4495.69,
      "target": 4510.624,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T14:35:00Z",
      "outcome_time": "2026-06-02T16:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T14-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4495.69,
          "impulse_high": 4505.515,
          "fib_entry_level": "62%",
          "entry": 4499.4235,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4486.953, planned_rr=2.0, touch=2026-06-02T17:35:00Z, outcome=sl_first",
      "entry": 4486.953,
      "stop": 4491.765,
      "target": 4477.328,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T17:35:00Z",
      "outcome_time": "2026-06-02T22:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4482.14,
          "impulse_high": 4491.765,
          "fib_entry_level": "50%",
          "entry": 4486.9525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4486.595,
              "high": 4491.795,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4484.075,
              "high": 4491.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4488.108, planned_rr=3.0, touch=2026-06-02T17:35:00Z, outcome=sl_first",
      "entry": 4488.108,
      "stop": 4491.765,
      "target": 4477.135,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T17:35:00Z",
      "outcome_time": "2026-06-02T22:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4482.14,
          "impulse_high": 4491.765,
          "fib_entry_level": "62%",
          "entry": 4488.1075,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4486.595,
              "high": 4491.795,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4484.075,
              "high": 4491.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4484.177, planned_rr=2.0, touch=2026-06-02T18:40:00Z, outcome=sl_first",
      "entry": 4484.177,
      "stop": 4489.57,
      "target": 4473.392,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T18:40:00Z",
      "outcome_time": "2026-06-02T18:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4478.785,
          "impulse_high": 4489.57,
          "fib_entry_level": "50%",
          "entry": 4484.1775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4484.075,
              "high": 4491.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4485.472, planned_rr=3.0, touch=2026-06-02T18:35:00Z, outcome=sl_first",
      "entry": 4485.472,
      "stop": 4489.57,
      "target": 4473.177,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T18:35:00Z",
      "outcome_time": "2026-06-02T18:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4478.785,
          "impulse_high": 4489.57,
          "fib_entry_level": "62%",
          "entry": 4485.4717,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4484.075,
              "high": 4491.075,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T18:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4484.231, planned_rr=3.0, touch=2026-06-02T19:35:00Z, outcome=sl_first",
      "entry": 4484.231,
      "stop": 4480.3,
      "target": 4496.024,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T19:35:00Z",
      "outcome_time": "2026-06-02T23:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T18-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T18:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4480.3,
          "impulse_high": 4490.645,
          "fib_entry_level": "62%",
          "entry": 4484.2311,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4489.237, planned_rr=3.0, touch=2026-06-02T22:50:00Z, outcome=tp_first",
      "entry": 4489.237,
      "stop": 4492.355,
      "target": 4479.883,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T22:50:00Z",
      "outcome_time": "2026-06-02T23:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4484.15,
          "impulse_high": 4492.355,
          "fib_entry_level": "62%",
          "entry": 4489.237099999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4481.775, planned_rr=2.0, touch=2026-06-02T23:05:00Z, outcome=tp_first",
      "entry": 4481.775,
      "stop": 4488.91,
      "target": 4467.505,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-02T23:05:00Z",
      "outcome_time": "2026-06-02T23:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4474.64,
          "impulse_high": 4488.91,
          "fib_entry_level": "50%",
          "entry": 4481.775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.575,
              "high": 4484.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4483.487, planned_rr=3.0, touch=2026-06-02T23:05:00Z, outcome=tp_first",
      "entry": 4483.487,
      "stop": 4488.91,
      "target": 4467.22,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T23:05:00Z",
      "outcome_time": "2026-06-02T23:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4474.64,
          "impulse_high": 4488.91,
          "fib_entry_level": "62%",
          "entry": 4483.4874,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.575,
              "high": 4484.15,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-00-00Z_long_breaker_continuation",
      "timestamp": "2026-06-02T23:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4480.622, planned_rr=2.0, touch=2026-06-02T23:10:00Z, outcome=sl_first",
      "entry": 4480.622,
      "stop": 4474.64,
      "target": 4492.587,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T23:10:00Z",
      "outcome_time": "2026-06-02T23:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-00-00Z_long_breaker_continuation",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4474.64,
          "entry": 4480.6224999999995,
          "stop": 4474.64,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4479.865,
              "high": 4481.38,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4483.505,
              "high": 4485.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4471.767, planned_rr=3.0, touch=2026-06-02T23:20:00Z, outcome=sl_first",
      "entry": 4471.767,
      "stop": 4477.575,
      "target": 4454.342,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-02T23:20:00Z",
      "outcome_time": "2026-06-03T00:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.29,
          "impulse_high": 4477.575,
          "fib_entry_level": "62%",
          "entry": 4471.7667,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-15-00Z_long_breaker_continuation",
      "timestamp": "2026-06-02T23:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4480.622, planned_rr=2.0, touch=2026-06-03T00:20:00Z, outcome=sl_first",
      "entry": 4480.622,
      "stop": 4462.29,
      "target": 4517.287,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T00:20:00Z",
      "outcome_time": "2026-06-03T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-15-00Z_long_breaker_continuation",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4462.29,
          "entry": 4480.6224999999995,
          "stop": 4462.29,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4479.865,
              "high": 4481.38,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4483.505,
              "high": 4485.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-02T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-02T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4467.453, planned_rr=3.0, touch=2026-06-02T23:35:00Z, outcome=tp_first",
      "entry": 4467.453,
      "stop": 4462.665,
      "target": 4481.817,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-02T23:35:00Z",
      "outcome_time": "2026-06-03T00:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-02T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-02",
        "timestamp": "2026-06-02T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.665,
          "impulse_high": 4475.265,
          "fib_entry_level": "62%",
          "entry": 4467.453,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4541.63,
            "PDL": 4463.01,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4477.875, planned_rr=3.0, touch=2026-06-03T00:20:00Z, outcome=tp_first",
      "entry": 4477.875,
      "stop": 4474.425,
      "target": 4488.227,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-03T00:20:00Z",
      "outcome_time": "2026-06-03T00:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4474.425,
          "impulse_high": 4483.505,
          "fib_entry_level": "62%",
          "entry": 4477.8754,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4487.272, planned_rr=3.0, touch=2026-06-03T00:35:00Z, outcome=sl_first",
      "entry": 4487.272,
      "stop": 4481.38,
      "target": 4504.948,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T00:35:00Z",
      "outcome_time": "2026-06-03T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4481.38,
          "impulse_high": 4496.885,
          "fib_entry_level": "62%",
          "entry": 4487.2719,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4477.608, planned_rr=2.0, touch=2026-06-03T02:05:00Z, outcome=sl_first",
      "entry": 4477.608,
      "stop": 4487.81,
      "target": 4457.202,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T02:05:00Z",
      "outcome_time": "2026-06-03T04:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4467.405,
          "impulse_high": 4487.81,
          "fib_entry_level": "50%",
          "entry": 4477.6075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.575,
              "high": 4484.15,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4472.89,
              "high": 4485.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4480.056, planned_rr=3.0, touch=2026-06-03T02:10:00Z, outcome=sl_first",
      "entry": 4480.056,
      "stop": 4487.81,
      "target": 4456.794,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T02:10:00Z",
      "outcome_time": "2026-06-03T04:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4467.405,
          "impulse_high": 4487.81,
          "fib_entry_level": "62%",
          "entry": 4480.0561,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.575,
              "high": 4484.15,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4472.89,
              "high": 4485.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T04-15-00Z_short_breaker_continuation",
      "timestamp": "2026-06-03T04:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4480.71, planned_rr=2.0, touch=2026-06-03T04:20:00Z, outcome=tp_first",
      "entry": 4480.71,
      "stop": 4488.44,
      "target": 4465.25,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T04:20:00Z",
      "outcome_time": "2026-06-03T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T04-15-00Z_short_breaker_continuation",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4488.44,
          "entry": 4480.71,
          "stop": 4488.44,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.385,
              "high": 4484.035,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4474.135,
              "high": 4477.155,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T04-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-03T04:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4480.71, planned_rr=2.0, touch=2026-06-03T04:20:00Z, outcome=tp_first",
      "entry": 4480.71,
      "stop": 4488.44,
      "target": 4465.25,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T04:20:00Z",
      "outcome_time": "2026-06-03T05:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T04-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4488.44,
          "entry": 4480.71,
          "stop": 4488.44,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4477.385,
              "high": 4484.035,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4474.135,
              "high": 4477.155,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T04-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-03T04:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4477.155, planned_rr=2.0, touch=2026-06-03T04:25:00Z, outcome=tp_first",
      "entry": 4477.155,
      "stop": 4488.44,
      "target": 4454.585,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T04:25:00Z",
      "outcome_time": "2026-06-03T07:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T04-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4488.44,
          "entry": 4477.155,
          "stop": 4488.44,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T05-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-03T05:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4468.655, planned_rr=2.0, touch=2026-06-03T05:25:00Z, outcome=sl_first",
      "entry": 4468.655,
      "stop": 4466.265,
      "target": 4473.435,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T05:25:00Z",
      "outcome_time": "2026-06-03T05:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T05-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4466.265,
          "entry": 4468.655,
          "stop": 4466.265,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4460.959, planned_rr=3.0, touch=2026-06-03T06:20:00Z, outcome=sl_first",
      "entry": 4460.959,
      "stop": 4456.92,
      "target": 4473.078,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T06:20:00Z",
      "outcome_time": "2026-06-03T06:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T06-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4456.92,
          "impulse_high": 4467.55,
          "fib_entry_level": "62%",
          "entry": 4460.9594,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4464.749, planned_rr=3.0, touch=2026-06-03T07:05:00Z, outcome=sl_first",
      "entry": 4464.749,
      "stop": 4460.075,
      "target": 4478.771,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T07:05:00Z",
      "outcome_time": "2026-06-03T07:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T07-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4460.075,
          "impulse_high": 4472.375,
          "fib_entry_level": "62%",
          "entry": 4464.749,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4463.132, planned_rr=2.0, touch=2026-06-03T07:20:00Z, outcome=tp_first",
      "entry": 4463.132,
      "stop": 4469.995,
      "target": 4449.407,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T07:20:00Z",
      "outcome_time": "2026-06-03T08:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4456.27,
          "impulse_high": 4469.995,
          "fib_entry_level": "50%",
          "entry": 4463.1325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4454.415,
              "high": 4463.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T07:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4464.78, planned_rr=3.0, touch=2026-06-03T07:20:00Z, outcome=tp_first",
      "entry": 4464.78,
      "stop": 4469.995,
      "target": 4449.133,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-03T07:20:00Z",
      "outcome_time": "2026-06-03T08:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T07-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T07:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4456.27,
          "impulse_high": 4469.995,
          "fib_entry_level": "62%",
          "entry": 4464.779500000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4449.148, planned_rr=2.0, touch=2026-06-03T08:50:00Z, outcome=sl_first",
      "entry": 4449.148,
      "stop": 4457.93,
      "target": 4431.582,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T08:50:00Z",
      "outcome_time": "2026-06-03T09:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4440.365,
          "impulse_high": 4457.93,
          "fib_entry_level": "50%",
          "entry": 4449.1475,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4441.92,
              "high": 4459.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4451.255, planned_rr=3.0, touch=2026-06-03T08:50:00Z, outcome=sl_first",
      "entry": 4451.255,
      "stop": 4457.93,
      "target": 4431.231,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T08:50:00Z",
      "outcome_time": "2026-06-03T09:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4440.365,
          "impulse_high": 4457.93,
          "fib_entry_level": "62%",
          "entry": 4451.2553,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4441.92,
              "high": 4459.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4445.83, planned_rr=2.0, touch=2026-06-03T09:25:00Z, outcome=sl_first",
      "entry": 4445.83,
      "stop": 4452.14,
      "target": 4433.21,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T09:25:00Z",
      "outcome_time": "2026-06-03T10:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4439.52,
          "impulse_high": 4452.14,
          "fib_entry_level": "50%",
          "entry": 4445.83,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4441.92,
              "high": 4459.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4447.344, planned_rr=3.0, touch=2026-06-03T09:20:00Z, outcome=sl_first",
      "entry": 4447.344,
      "stop": 4452.14,
      "target": 4432.958,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T09:20:00Z",
      "outcome_time": "2026-06-03T09:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4439.52,
          "impulse_high": 4452.14,
          "fib_entry_level": "62%",
          "entry": 4447.3444,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4441.92,
              "high": 4459.135,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4454.587, planned_rr=2.0, touch=2026-06-03T13:20:00Z, outcome=tp_first",
      "entry": 4454.587,
      "stop": 4463.3,
      "target": 4437.162,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T13:20:00Z",
      "outcome_time": "2026-06-03T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4445.875,
          "impulse_high": 4463.3,
          "fib_entry_level": "50%",
          "entry": 4454.5875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4453.325,
              "high": 4457.98,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4456.678, planned_rr=3.0, touch=2026-06-03T13:20:00Z, outcome=tp_first",
      "entry": 4456.678,
      "stop": 4463.3,
      "target": 4436.814,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-03T13:20:00Z",
      "outcome_time": "2026-06-03T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4445.875,
          "impulse_high": 4463.3,
          "fib_entry_level": "62%",
          "entry": 4456.6785,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4453.325,
              "high": 4457.98,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4443.492, planned_rr=3.0, touch=2026-06-03T13:40:00Z, outcome=sl_first",
      "entry": 4443.492,
      "stop": 4453.325,
      "target": 4413.995,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T13:40:00Z",
      "outcome_time": "2026-06-03T14:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4427.45,
          "impulse_high": 4453.325,
          "fib_entry_level": "62%",
          "entry": 4443.492499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T19-00-00Z_short_breaker_continuation",
      "timestamp": "2026-06-03T19:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4441.743, planned_rr=2.0, touch=2026-06-03T20:05:00Z, outcome=tp_first",
      "entry": 4441.743,
      "stop": 4450.1,
      "target": 4425.028,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T20:05:00Z",
      "outcome_time": "2026-06-03T22:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T19-00-00Z_short_breaker_continuation",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4450.1,
          "entry": 4441.7425,
          "stop": 4450.1,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4440.345,
              "high": 4443.14,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4435.13,
              "high": 4437.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4436.025, planned_rr=2.0, touch=2026-06-03T22:05:00Z, outcome=tp_first",
      "entry": 4436.025,
      "stop": 4439.69,
      "target": 4428.695,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-03T22:05:00Z",
      "outcome_time": "2026-06-03T22:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4432.36,
          "impulse_high": 4439.69,
          "fib_entry_level": "50%",
          "entry": 4436.025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4435.13,
              "high": 4437.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-03T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-03T20:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4436.905, planned_rr=3.0, touch=2026-06-03T22:30:00Z, outcome=sl_first",
      "entry": 4436.905,
      "stop": 4439.69,
      "target": 4428.548,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-03T22:30:00Z",
      "outcome_time": "2026-06-03T22:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-03T20-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-03",
        "timestamp": "2026-06-03T20:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4432.36,
          "impulse_high": 4439.69,
          "fib_entry_level": "62%",
          "entry": 4436.9046,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4435.13,
              "high": 4437.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4496.885,
            "PDL": 4426.42,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4466.095, planned_rr=3.0, touch=2026-06-04T01:35:00Z, outcome=sl_first",
      "entry": 4466.095,
      "stop": 4470.4,
      "target": 4453.178,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-04T01:35:00Z",
      "outcome_time": "2026-06-04T01:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4459.07,
          "impulse_high": 4470.4,
          "fib_entry_level": "62%",
          "entry": 4466.094599999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4467.185, planned_rr=3.0, touch=2026-06-04T03:35:00Z, outcome=sl_first",
      "entry": 4467.185,
      "stop": 4470.985,
      "target": 4455.785,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-04T03:35:00Z",
      "outcome_time": "2026-06-04T04:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T03-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4460.985,
          "impulse_high": 4470.985,
          "fib_entry_level": "62%",
          "entry": 4467.1849999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4468.025, planned_rr=2.0, touch=2026-06-04T10:20:00Z, outcome=sl_first",
      "entry": 4468.025,
      "stop": 4471.7,
      "target": 4460.675,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-04T10:20:00Z",
      "outcome_time": "2026-06-04T10:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4464.35,
          "impulse_high": 4471.7,
          "fib_entry_level": "50%",
          "entry": 4468.025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4461.84,
              "high": 4470.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4468.907, planned_rr=3.0, touch=2026-06-04T10:20:00Z, outcome=sl_first",
      "entry": 4468.907,
      "stop": 4471.7,
      "target": 4460.528,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-04T10:20:00Z",
      "outcome_time": "2026-06-04T10:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4464.35,
          "impulse_high": 4471.7,
          "fib_entry_level": "62%",
          "entry": 4468.907,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4461.84,
              "high": 4470.77,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4505.386, planned_rr=3.0, touch=2026-06-04T12:50:00Z, outcome=sl_first",
      "entry": 4505.386,
      "stop": 4513.875,
      "target": 4479.918,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-04T12:50:00Z",
      "outcome_time": "2026-06-04T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4491.535,
          "impulse_high": 4513.875,
          "fib_entry_level": "62%",
          "entry": 4505.3858,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T13-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-04T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4501.145, planned_rr=2.0, touch=2026-06-04T13:50:00Z, outcome=tp_first",
      "entry": 4501.145,
      "stop": 4515.02,
      "target": 4473.395,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-04T13:50:00Z",
      "outcome_time": "2026-06-04T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T13-30-00Z_short_breaker_continuation",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4515.02,
          "entry": 4501.145,
          "stop": 4515.02,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.035,
              "high": 4502.255,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4475.525,
              "high": 4484.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T13-45-00Z_short_breaker_continuation",
      "timestamp": "2026-06-04T13:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4501.145, planned_rr=2.0, touch=2026-06-04T13:50:00Z, outcome=tp_first",
      "entry": 4501.145,
      "stop": 4515.515,
      "target": 4472.405,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-04T13:50:00Z",
      "outcome_time": "2026-06-04T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T13-45-00Z_short_breaker_continuation",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4515.515,
          "entry": 4501.145,
          "stop": 4515.515,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.035,
              "high": 4502.255,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4475.525,
              "high": 4484.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T13-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-04T13:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4501.145, planned_rr=2.0, touch=2026-06-04T13:50:00Z, outcome=tp_first",
      "entry": 4501.145,
      "stop": 4515.515,
      "target": 4472.405,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-04T13:50:00Z",
      "outcome_time": "2026-06-04T14:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T13-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4515.515,
          "entry": 4501.145,
          "stop": 4515.515,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4500.035,
              "high": 4502.255,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4475.525,
              "high": 4484.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T13-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-04T13:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4495.865, planned_rr=2.0, touch=2026-06-04T13:55:00Z, outcome=tp_first",
      "entry": 4495.865,
      "stop": 4515.515,
      "target": 4456.565,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-04T13:55:00Z",
      "outcome_time": "2026-06-05T00:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T13-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4515.515,
          "entry": 4495.865,
          "stop": 4515.515,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4479.615, planned_rr=2.0, touch=2026-06-04T14:35:00Z, outcome=tp_first",
      "entry": 4479.615,
      "stop": 4486.88,
      "target": 4465.085,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-04T14:35:00Z",
      "outcome_time": "2026-06-04T14:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4472.35,
          "impulse_high": 4486.88,
          "fib_entry_level": "50%",
          "entry": 4479.615,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4475.525,
              "high": 4484.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4481.359, planned_rr=3.0, touch=2026-06-04T14:35:00Z, outcome=tp_first",
      "entry": 4481.359,
      "stop": 4486.88,
      "target": 4464.794,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-04T14:35:00Z",
      "outcome_time": "2026-06-04T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4472.35,
          "impulse_high": 4486.88,
          "fib_entry_level": "62%",
          "entry": 4481.3586000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4475.525,
              "high": 4484.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4473.529, planned_rr=3.0, touch=2026-06-04T22:50:00Z, outcome=tp_first",
      "entry": 4473.529,
      "stop": 4476.305,
      "target": 4465.201,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-04T22:50:00Z",
      "outcome_time": "2026-06-04T23:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4469.0,
          "impulse_high": 4476.305,
          "fib_entry_level": "62%",
          "entry": 4473.5291,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-04T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-04T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4466.78, planned_rr=3.0, touch=2026-06-04T23:35:00Z, outcome=tp_first",
      "entry": 4466.78,
      "stop": 4469.645,
      "target": 4458.184,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-04T23:35:00Z",
      "outcome_time": "2026-06-05T00:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-04T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-04",
        "timestamp": "2026-06-04T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4462.105,
          "impulse_high": 4469.645,
          "fib_entry_level": "62%",
          "entry": 4466.7798,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4515.515,
            "PDL": 4423.965,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-05T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4459.747, planned_rr=2.0, touch=2026-06-05T00:10:00Z, outcome=sl_first",
      "entry": 4459.747,
      "stop": 4465.045,
      "target": 4449.152,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-05T00:10:00Z",
      "outcome_time": "2026-06-05T00:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4454.45,
          "impulse_high": 4465.045,
          "fib_entry_level": "50%",
          "entry": 4459.7474999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4457.76,
              "high": 4460.67,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-05T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4461.019, planned_rr=3.0, touch=2026-06-05T00:05:00Z, outcome=sl_first",
      "entry": 4461.019,
      "stop": 4465.045,
      "target": 4448.941,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-05T00:05:00Z",
      "outcome_time": "2026-06-05T00:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4454.45,
          "impulse_high": 4465.045,
          "fib_entry_level": "62%",
          "entry": 4461.0189,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-05T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4454.39, planned_rr=3.0, touch=2026-06-05T01:35:00Z, outcome=tp_first",
      "entry": 4454.39,
      "stop": 4459.79,
      "target": 4438.191,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-05T01:35:00Z",
      "outcome_time": "2026-06-05T03:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4445.58,
          "impulse_high": 4459.79,
          "fib_entry_level": "62%",
          "entry": 4454.3902,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-05T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4446.936, planned_rr=3.0, touch=2026-06-05T02:35:00Z, outcome=tp_first",
      "entry": 4446.936,
      "stop": 4451.99,
      "target": 4431.774,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-05T02:35:00Z",
      "outcome_time": "2026-06-05T06:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4438.69,
          "impulse_high": 4451.99,
          "fib_entry_level": "62%",
          "entry": 4446.936,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T11-45-00Z_short_breaker_continuation",
      "timestamp": "2026-06-05T11:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4455.485, planned_rr=2.0, touch=2026-06-05T12:30:00Z, outcome=tp_first",
      "entry": 4455.485,
      "stop": 4475.325,
      "target": 4415.805,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-05T12:30:00Z",
      "outcome_time": "2026-06-05T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T11-45-00Z_short_breaker_continuation",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4475.325,
          "entry": 4455.485000000001,
          "stop": 4475.325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4449.245,
              "high": 4461.725,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4420.86,
              "high": 4439.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T12-15-00Z_short_breaker_continuation",
      "timestamp": "2026-06-05T12:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4455.485, planned_rr=2.0, touch=2026-06-05T12:30:00Z, outcome=tp_first",
      "entry": 4455.485,
      "stop": 4475.885,
      "target": 4414.685,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-05T12:30:00Z",
      "outcome_time": "2026-06-05T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T12-15-00Z_short_breaker_continuation",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4475.885,
          "entry": 4455.485000000001,
          "stop": 4475.885,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4449.245,
              "high": 4461.725,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4420.86,
              "high": 4439.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T12-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-05T12:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4455.485, planned_rr=2.0, touch=2026-06-05T12:30:00Z, outcome=tp_first",
      "entry": 4455.485,
      "stop": 4475.885,
      "target": 4414.685,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-05T12:30:00Z",
      "outcome_time": "2026-06-05T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T12-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4475.885,
          "entry": 4455.485000000001,
          "stop": 4475.885,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4449.245,
              "high": 4461.725,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4420.86,
              "high": 4439.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T12-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-05T12:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4465.22, planned_rr=2.0, touch=2026-06-05T12:25:00Z, outcome=tp_first",
      "entry": 4465.22,
      "stop": 4475.885,
      "target": 4443.89,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-05T12:25:00Z",
      "outcome_time": "2026-06-05T12:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T12-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4475.885,
          "entry": 4465.22,
          "stop": 4475.885,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-05T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-05T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4378.337, planned_rr=2.0, touch=2026-06-05T13:55:00Z, outcome=tp_first",
      "entry": 4378.337,
      "stop": 4391.2,
      "target": 4352.612,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-05T13:55:00Z",
      "outcome_time": "2026-06-05T14:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-05T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-05",
        "timestamp": "2026-06-05T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4365.475,
          "impulse_high": 4391.2,
          "fib_entry_level": "50%",
          "entry": 4378.3375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4364.135,
              "high": 4379.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-07T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-07T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4323.677, planned_rr=2.0, touch=2026-06-07T22:20:00Z, outcome=sl_first",
      "entry": 4323.677,
      "stop": 4330.885,
      "target": 4309.262,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-07T22:20:00Z",
      "outcome_time": "2026-06-07T23:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-07T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-07",
        "timestamp": "2026-06-07T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4316.47,
          "impulse_high": 4330.885,
          "fib_entry_level": "50%",
          "entry": 4323.6775,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4321.86,
              "high": 4330.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-07T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-07T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4325.407, planned_rr=3.0, touch=2026-06-07T22:20:00Z, outcome=sl_first",
      "entry": 4325.407,
      "stop": 4330.885,
      "target": 4308.974,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-07T22:20:00Z",
      "outcome_time": "2026-06-07T23:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-07T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-07",
        "timestamp": "2026-06-07T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4316.47,
          "impulse_high": 4330.885,
          "fib_entry_level": "62%",
          "entry": 4325.4073,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4321.86,
              "high": 4330.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-07T22-15-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-07T22:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4326.382, planned_rr=2.0, touch=2026-06-07T22:20:00Z, outcome=tp_first",
      "entry": 4326.382,
      "stop": 4330.885,
      "target": 4317.377,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-07T22:20:00Z",
      "outcome_time": "2026-06-07T22:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-07T22-15-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-07",
        "timestamp": "2026-06-07T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4330.885,
          "entry": 4326.3825,
          "stop": 4330.885,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4321.86,
              "high": 4330.905,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-07T22-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-07T22:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4316.965, planned_rr=2.0, touch=2026-06-07T22:25:00Z, outcome=sl_first",
      "entry": 4316.965,
      "stop": 4330.885,
      "target": 4289.125,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-07T22:25:00Z",
      "outcome_time": "2026-06-07T23:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-07T22-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-07",
        "timestamp": "2026-06-07T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4330.885,
          "entry": 4316.965,
          "stop": 4330.885,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4481.625,
            "PDL": 4311.93,
            "PWH": 4546.27,
            "PWL": 4311.93
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4321.455, planned_rr=3.0, touch=2026-06-08T01:20:00Z, outcome=tp_first",
      "entry": 4321.455,
      "stop": 4327.685,
      "target": 4302.765,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-08T01:20:00Z",
      "outcome_time": "2026-06-08T01:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4311.29,
          "impulse_high": 4327.685,
          "fib_entry_level": "62%",
          "entry": 4321.454900000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4314.113, planned_rr=2.0, touch=2026-06-08T04:50:00Z, outcome=tp_first",
      "entry": 4314.113,
      "stop": 4320.505,
      "target": 4301.328,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-08T04:50:00Z",
      "outcome_time": "2026-06-08T05:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4307.72,
          "impulse_high": 4320.505,
          "fib_entry_level": "50%",
          "entry": 4314.1125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4307.81,
              "high": 4314.215,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4304.55,
              "high": 4314.56,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4315.647, planned_rr=3.0, touch=2026-06-08T05:00:00Z, outcome=tp_first",
      "entry": 4315.647,
      "stop": 4320.505,
      "target": 4301.072,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-08T05:00:00Z",
      "outcome_time": "2026-06-08T05:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4307.72,
          "impulse_high": 4320.505,
          "fib_entry_level": "62%",
          "entry": 4315.6467,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4314.215,
              "high": 4316.285,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4296.33, planned_rr=3.0, touch=2026-06-08T06:00:00Z, outcome=sl_first",
      "entry": 4296.33,
      "stop": 4313.4,
      "target": 4245.122,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-08T06:00:00Z",
      "outcome_time": "2026-06-08T07:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4268.48,
          "impulse_high": 4313.4,
          "fib_entry_level": "62%",
          "entry": 4296.3304,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4295.895,
              "high": 4304.55,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4330.233, planned_rr=3.0, touch=2026-06-08T12:05:00Z, outcome=sl_first",
      "entry": 4330.233,
      "stop": 4334.935,
      "target": 4316.125,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-08T12:05:00Z",
      "outcome_time": "2026-06-08T12:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4322.56,
          "impulse_high": 4334.935,
          "fib_entry_level": "62%",
          "entry": 4330.2325,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T12-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-08T12:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4288.25,
      "stop": 4334.935,
      "target": 4194.88,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-06-08T12-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4334.935,
          "entry": 4288.25,
          "stop": 4334.935,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4284.26,
              "high": 4292.24,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4330.89,
              "high": 4331.27,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T12-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-08T12:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4322.56, planned_rr=2.0, touch=2026-06-08T12:10:00Z, outcome=sl_first",
      "entry": 4322.56,
      "stop": 4334.935,
      "target": 4297.81,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-08T12:10:00Z",
      "outcome_time": "2026-06-08T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T12-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4334.935,
          "entry": 4322.56,
          "stop": 4334.935,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4330.667, planned_rr=3.0, touch=2026-06-08T13:20:00Z, outcome=sl_first",
      "entry": 4330.667,
      "stop": 4335.2,
      "target": 4317.066,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-08T13:20:00Z",
      "outcome_time": "2026-06-08T13:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4323.27,
          "impulse_high": 4335.2,
          "fib_entry_level": "62%",
          "entry": 4330.6666000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4324.528, planned_rr=2.0, touch=2026-06-08T23:25:00Z, outcome=tp_first",
      "entry": 4324.528,
      "stop": 4328.505,
      "target": 4316.573,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-08T23:25:00Z",
      "outcome_time": "2026-06-08T23:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4320.55,
          "impulse_high": 4328.505,
          "fib_entry_level": "50%",
          "entry": 4324.5275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4322.4,
              "high": 4325.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-08T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-08T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4325.482, planned_rr=3.0, touch=2026-06-08T23:20:00Z, outcome=tp_first",
      "entry": 4325.482,
      "stop": 4328.505,
      "target": 4316.413,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-08T23:20:00Z",
      "outcome_time": "2026-06-08T23:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-08T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-08",
        "timestamp": "2026-06-08T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4320.55,
          "impulse_high": 4328.505,
          "fib_entry_level": "62%",
          "entry": 4325.4821,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4353.45,
            "PDL": 4268.48,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4321.024, planned_rr=3.0, touch=2026-06-09T00:35:00Z, outcome=sl_first",
      "entry": 4321.024,
      "stop": 4323.775,
      "target": 4312.77,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T00:35:00Z",
      "outcome_time": "2026-06-09T01:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4316.535,
          "impulse_high": 4323.775,
          "fib_entry_level": "62%",
          "entry": 4321.0238,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T06:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4336.611, planned_rr=3.0, touch=2026-06-09T06:50:00Z, outcome=tp_first",
      "entry": 4336.611,
      "stop": 4340.525,
      "target": 4324.869,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-09T06:50:00Z",
      "outcome_time": "2026-06-09T07:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T06-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4330.225,
          "impulse_high": 4340.525,
          "fib_entry_level": "62%",
          "entry": 4336.611,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4331.959, planned_rr=3.0, touch=2026-06-09T09:20:00Z, outcome=sl_first",
      "entry": 4331.959,
      "stop": 4335.575,
      "target": 4321.112,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T09:20:00Z",
      "outcome_time": "2026-06-09T09:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4326.06,
          "impulse_high": 4335.575,
          "fib_entry_level": "62%",
          "entry": 4331.9593,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4340.177, planned_rr=3.0, touch=2026-06-09T12:20:00Z, outcome=sl_first",
      "entry": 4340.177,
      "stop": 4343.095,
      "target": 4331.421,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T12:20:00Z",
      "outcome_time": "2026-06-09T12:45:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4335.415,
          "impulse_high": 4343.095,
          "fib_entry_level": "62%",
          "entry": 4340.1766,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4336.28, planned_rr=2.0, touch=2026-06-09T13:45:00Z, outcome=sl_first",
      "entry": 4336.28,
      "stop": 4342.265,
      "target": 4324.31,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T13:45:00Z",
      "outcome_time": "2026-06-09T13:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4330.295,
          "impulse_high": 4342.265,
          "fib_entry_level": "50%",
          "entry": 4336.280000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4334.57,
              "high": 4338.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4337.716, planned_rr=3.0, touch=2026-06-09T13:45:00Z, outcome=sl_first",
      "entry": 4337.716,
      "stop": 4342.265,
      "target": 4324.071,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T13:45:00Z",
      "outcome_time": "2026-06-09T13:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4330.295,
          "impulse_high": 4342.265,
          "fib_entry_level": "62%",
          "entry": 4337.7164,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4334.57,
              "high": 4338.22,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4272.663, planned_rr=3.0, touch=2026-06-09T16:05:00Z, outcome=tp_first",
      "entry": 4272.663,
      "stop": 4281.295,
      "target": 4246.768,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-09T16:05:00Z",
      "outcome_time": "2026-06-09T16:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4258.58,
          "impulse_high": 4281.295,
          "fib_entry_level": "62%",
          "entry": 4272.6633,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4255.966, planned_rr=3.0, touch=2026-06-09T16:35:00Z, outcome=sl_first",
      "entry": 4255.966,
      "stop": 4267.775,
      "target": 4220.541,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-09T16:35:00Z",
      "outcome_time": "2026-06-09T16:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4236.7,
          "impulse_high": 4267.775,
          "fib_entry_level": "62%",
          "entry": 4255.9664999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4253.275,
              "high": 4266.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-09T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-09T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4243.365, planned_rr=3.0, touch=2026-06-09T23:00:00Z, outcome=tp_first",
      "entry": 4243.365,
      "stop": 4250.04,
      "target": 4223.341,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-09T23:00:00Z",
      "outcome_time": "2026-06-09T23:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-09T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-09",
        "timestamp": "2026-06-09T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4232.475,
          "impulse_high": 4250.04,
          "fib_entry_level": "62%",
          "entry": 4243.3653,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4363.72,
            "PDL": 4236.7,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4211.509, planned_rr=3.0, touch=2026-06-10T00:55:00Z, outcome=sl_first",
      "entry": 4211.509,
      "stop": 4219.16,
      "target": 4188.555,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T00:55:00Z",
      "outcome_time": "2026-06-10T00:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4199.025,
          "impulse_high": 4219.16,
          "fib_entry_level": "62%",
          "entry": 4211.508699999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4206.992, planned_rr=3.0, touch=2026-06-10T01:15:00Z, outcome=sl_first",
      "entry": 4206.992,
      "stop": 4219.2,
      "target": 4170.37,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T01:15:00Z",
      "outcome_time": "2026-06-10T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4187.075,
          "impulse_high": 4219.2,
          "fib_entry_level": "62%",
          "entry": 4206.992499999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4184.038, planned_rr=3.0, touch=2026-06-10T02:50:00Z, outcome=sl_first",
      "entry": 4184.038,
      "stop": 4190.64,
      "target": 4164.23,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T02:50:00Z",
      "outcome_time": "2026-06-10T05:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4173.265,
          "impulse_high": 4190.64,
          "fib_entry_level": "62%",
          "entry": 4184.0375,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4183.89,
              "high": 4195.69,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4177.537, planned_rr=3.0, touch=2026-06-10T08:15:00Z, outcome=tp_first",
      "entry": 4177.537,
      "stop": 4187.385,
      "target": 4147.994,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-10T08:15:00Z",
      "outcome_time": "2026-06-10T11:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4161.47,
          "impulse_high": 4187.385,
          "fib_entry_level": "62%",
          "entry": 4177.5373,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4162.934, planned_rr=3.0, touch=2026-06-10T11:35:00Z, outcome=tp_first",
      "entry": 4162.934,
      "stop": 4168.115,
      "target": 4147.39,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-10T11:35:00Z",
      "outcome_time": "2026-06-10T11:55:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T11-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4154.48,
          "impulse_high": 4168.115,
          "fib_entry_level": "62%",
          "entry": 4162.9337,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4143.7, planned_rr=2.0, touch=2026-06-10T12:10:00Z, outcome=sl_first",
      "entry": 4143.7,
      "stop": 4152.685,
      "target": 4125.73,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T12:10:00Z",
      "outcome_time": "2026-06-10T12:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4134.715,
          "impulse_high": 4152.685,
          "fib_entry_level": "50%",
          "entry": 4143.700000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4142.845,
              "high": 4145.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4145.856, planned_rr=3.0, touch=2026-06-10T12:05:00Z, outcome=sl_first",
      "entry": 4145.856,
      "stop": 4152.685,
      "target": 4125.371,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T12:05:00Z",
      "outcome_time": "2026-06-10T12:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4134.715,
          "impulse_high": 4152.685,
          "fib_entry_level": "62%",
          "entry": 4145.856400000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4142.845,
              "high": 4145.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4159.307, planned_rr=3.0, touch=2026-06-10T13:35:00Z, outcome=sl_first",
      "entry": 4159.307,
      "stop": 4169.675,
      "target": 4128.202,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T13:35:00Z",
      "outcome_time": "2026-06-10T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4142.39,
          "impulse_high": 4169.675,
          "fib_entry_level": "62%",
          "entry": 4159.3067,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T13-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-10T13:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4153.583, planned_rr=2.0, touch=2026-06-10T13:35:00Z, outcome=sl_first",
      "entry": 4153.583,
      "stop": 4179.295,
      "target": 4102.158,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T13:35:00Z",
      "outcome_time": "2026-06-10T13:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T13-30-00Z_short_breaker_continuation",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4179.295,
          "entry": 4153.5825,
          "stop": 4179.295,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4152.685,
              "high": 4154.48,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4142.845,
              "high": 4145.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4077.937, planned_rr=3.0, touch=2026-06-10T20:05:00Z, outcome=tp_first",
      "entry": 4077.937,
      "stop": 4083.185,
      "target": 4062.194,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-10T20:05:00Z",
      "outcome_time": "2026-06-10T22:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T20-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4069.375,
          "impulse_high": 4083.185,
          "fib_entry_level": "62%",
          "entry": 4077.9372,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4049.136, planned_rr=3.0, touch=2026-06-10T22:30:00Z, outcome=sl_first",
      "entry": 4049.136,
      "stop": 4057.15,
      "target": 4025.093,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T22:30:00Z",
      "outcome_time": "2026-06-10T22:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4036.06,
          "impulse_high": 4057.15,
          "fib_entry_level": "62%",
          "entry": 4049.1358,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T22:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4058.851, planned_rr=3.0, touch=2026-06-10T22:50:00Z, outcome=tp_first",
      "entry": 4058.851,
      "stop": 4066.935,
      "target": 4034.597,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-10T22:50:00Z",
      "outcome_time": "2026-06-10T23:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T22-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T22:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4045.66,
          "impulse_high": 4066.935,
          "fib_entry_level": "62%",
          "entry": 4058.8505,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-10T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-10T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4042.541, planned_rr=3.0, touch=2026-06-10T23:05:00Z, outcome=sl_first",
      "entry": 4042.541,
      "stop": 4053.985,
      "target": 4008.21,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-10T23:05:00Z",
      "outcome_time": "2026-06-10T23:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-10T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-10",
        "timestamp": "2026-06-10T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4023.87,
          "impulse_high": 4053.985,
          "fib_entry_level": "62%",
          "entry": 4042.5413,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4257.605,
            "PDL": 4067.24,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-11T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4073.691, planned_rr=3.0, touch=2026-06-11T02:35:00Z, outcome=sl_first",
      "entry": 4073.691,
      "stop": 4085.055,
      "target": 4039.599,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T02:35:00Z",
      "outcome_time": "2026-06-11T04:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4055.15,
          "impulse_high": 4085.055,
          "fib_entry_level": "62%",
          "entry": 4073.6911,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4073.655,
              "high": 4081.515,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-11T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4074.259, planned_rr=3.0, touch=2026-06-11T12:20:00Z, outcome=sl_first",
      "entry": 4074.259,
      "stop": 4082.11,
      "target": 4050.707,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T12:20:00Z",
      "outcome_time": "2026-06-11T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4061.45,
          "impulse_high": 4082.11,
          "fib_entry_level": "62%",
          "entry": 4074.2592,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-11T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4080.807, planned_rr=3.0, touch=2026-06-11T13:05:00Z, outcome=sl_first",
      "entry": 4080.807,
      "stop": 4086.22,
      "target": 4064.568,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T13:05:00Z",
      "outcome_time": "2026-06-11T13:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4071.975,
          "impulse_high": 4086.22,
          "fib_entry_level": "62%",
          "entry": 4080.8069,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-11T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4073.184, planned_rr=3.0, touch=2026-06-11T14:05:00Z, outcome=sl_first",
      "entry": 4073.184,
      "stop": 4085.57,
      "target": 4036.026,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T14:05:00Z",
      "outcome_time": "2026-06-11T15:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4052.975,
          "impulse_high": 4085.57,
          "fib_entry_level": "62%",
          "entry": 4073.1839,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-11T16:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4097.028, planned_rr=3.0, touch=2026-06-11T16:20:00Z, outcome=sl_first",
      "entry": 4097.028,
      "stop": 4107.755,
      "target": 4064.845,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T16:20:00Z",
      "outcome_time": "2026-06-11T17:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T16-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4079.525,
          "impulse_high": 4107.755,
          "fib_entry_level": "62%",
          "entry": 4097.0276,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-11T16-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-11T16:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4079.755, planned_rr=2.0, touch=2026-06-11T16:25:00Z, outcome=sl_first",
      "entry": 4079.755,
      "stop": 4107.755,
      "target": 4023.755,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-11T16:25:00Z",
      "outcome_time": "2026-06-11T17:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-11T16-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-11",
        "timestamp": "2026-06-11T16:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4107.755,
          "entry": 4079.755,
          "stop": 4107.755,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4220.22,
            "PDL": 4023.87,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4196.967, planned_rr=2.0, touch=2026-06-12T02:05:00Z, outcome=sl_first",
      "entry": 4196.967,
      "stop": 4210.98,
      "target": 4168.943,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-12T02:05:00Z",
      "outcome_time": "2026-06-12T08:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4182.955,
          "impulse_high": 4210.98,
          "fib_entry_level": "50%",
          "entry": 4196.9675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4193.88,
              "high": 4200.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4200.331, planned_rr=3.0, touch=2026-06-12T03:15:00Z, outcome=sl_first",
      "entry": 4200.331,
      "stop": 4210.98,
      "target": 4168.382,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-12T03:15:00Z",
      "outcome_time": "2026-06-12T08:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4182.955,
          "impulse_high": 4210.98,
          "fib_entry_level": "62%",
          "entry": 4200.3305,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4193.88,
              "high": 4200.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4214.954, planned_rr=3.0, touch=2026-06-12T10:20:00Z, outcome=tp_first",
      "entry": 4214.954,
      "stop": 4222.315,
      "target": 4192.873,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-12T10:20:00Z",
      "outcome_time": "2026-06-12T12:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T10-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4202.945,
          "impulse_high": 4222.315,
          "fib_entry_level": "62%",
          "entry": 4214.9544,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4209.711, planned_rr=3.0, touch=2026-06-12T12:20:00Z, outcome=tp_first",
      "entry": 4209.711,
      "stop": 4215.43,
      "target": 4192.554,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-12T12:20:00Z",
      "outcome_time": "2026-06-12T12:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4200.38,
          "impulse_high": 4215.43,
          "fib_entry_level": "62%",
          "entry": 4209.711,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4196.602, planned_rr=2.0, touch=2026-06-12T13:40:00Z, outcome=sl_first",
      "entry": 4196.602,
      "stop": 4210.325,
      "target": 4169.158,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-12T13:40:00Z",
      "outcome_time": "2026-06-12T15:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4182.88,
          "impulse_high": 4210.325,
          "fib_entry_level": "50%",
          "entry": 4196.6025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4194.15,
              "high": 4197.46,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4199.896, planned_rr=3.0, touch=2026-06-12T13:35:00Z, outcome=sl_first",
      "entry": 4199.896,
      "stop": 4210.325,
      "target": 4168.609,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-12T13:35:00Z",
      "outcome_time": "2026-06-12T13:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4182.88,
          "impulse_high": 4210.325,
          "fib_entry_level": "62%",
          "entry": 4199.8958999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-12T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-12T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4221.713, planned_rr=3.0, touch=2026-06-12T15:35:00Z, outcome=sl_first",
      "entry": 4221.713,
      "stop": 4228.54,
      "target": 4201.233,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-12T15:35:00Z",
      "outcome_time": "2026-06-12T16:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-12T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-12",
        "timestamp": "2026-06-12T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4210.575,
          "impulse_high": 4228.54,
          "fib_entry_level": "62%",
          "entry": 4221.7133,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-14T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-14T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4298.016, planned_rr=3.0, touch=2026-06-14T22:20:00Z, outcome=sl_first",
      "entry": 4298.016,
      "stop": 4306.585,
      "target": 4272.309,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-14T22:20:00Z",
      "outcome_time": "2026-06-14T22:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-14T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-14",
        "timestamp": "2026-06-14T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4284.035,
          "impulse_high": 4306.585,
          "fib_entry_level": "62%",
          "entry": 4298.016,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4246.715,
            "PDL": 4170.29,
            "PWH": 4363.72,
            "PWL": 4023.87
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4321.545, planned_rr=2.0, touch=2026-06-15T02:05:00Z, outcome=tp_first",
      "entry": 4321.545,
      "stop": 4316.28,
      "target": 4332.075,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-15T02:05:00Z",
      "outcome_time": "2026-06-15T02:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4316.28,
          "impulse_high": 4326.81,
          "fib_entry_level": "50%",
          "entry": 4321.545,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4319.18,
              "high": 4324.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4322.712, planned_rr=2.0, touch=2026-06-15T05:35:00Z, outcome=tp_first",
      "entry": 4322.712,
      "stop": 4332.7,
      "target": 4302.737,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-15T05:35:00Z",
      "outcome_time": "2026-06-15T06:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4312.725,
          "impulse_high": 4332.7,
          "fib_entry_level": "50%",
          "entry": 4322.7125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4316.31,
              "high": 4325.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4325.11, planned_rr=3.0, touch=2026-06-15T05:35:00Z, outcome=tp_first",
      "entry": 4325.11,
      "stop": 4332.7,
      "target": 4302.338,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-15T05:35:00Z",
      "outcome_time": "2026-06-15T06:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4312.725,
          "impulse_high": 4332.7,
          "fib_entry_level": "62%",
          "entry": 4325.1095000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4316.31,
              "high": 4325.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4339.581, planned_rr=3.0, touch=2026-06-15T09:00:00Z, outcome=sl_first",
      "entry": 4339.581,
      "stop": 4342.95,
      "target": 4329.475,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T09:00:00Z",
      "outcome_time": "2026-06-15T09:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4334.085,
          "impulse_high": 4342.95,
          "fib_entry_level": "62%",
          "entry": 4339.5813,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4337.618, planned_rr=3.0, touch=2026-06-15T09:10:00Z, outcome=sl_first",
      "entry": 4337.618,
      "stop": 4334.145,
      "target": 4348.038,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T09:10:00Z",
      "outcome_time": "2026-06-15T11:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4334.145,
          "impulse_high": 4343.285,
          "fib_entry_level": "62%",
          "entry": 4337.6182,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T12-00-00Z_long_breaker_continuation",
      "timestamp": "2026-06-15T12:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4340.795, planned_rr=2.0, touch=2026-06-15T12:30:00Z, outcome=tp_first",
      "entry": 4340.795,
      "stop": 4330.54,
      "target": 4361.305,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-15T12:30:00Z",
      "outcome_time": "2026-06-15T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T12-00-00Z_long_breaker_continuation",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4330.54,
          "entry": 4340.795,
          "stop": 4330.54,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4338.205,
              "high": 4343.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T12-15-00Z_long_breaker_continuation",
      "timestamp": "2026-06-15T12:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Long entry=4340.795, planned_rr=2.0, touch=2026-06-15T12:30:00Z, outcome=sl_first",
      "entry": 4340.795,
      "stop": 4324.8,
      "target": 4372.785,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T12:30:00Z",
      "outcome_time": "2026-06-15T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T12-15-00Z_long_breaker_continuation",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4324.8,
          "entry": 4340.795,
          "stop": 4324.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4338.205,
              "high": 4343.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T12-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-15T12:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4340.795, planned_rr=2.0, touch=2026-06-15T12:30:00Z, outcome=sl_first",
      "entry": 4340.795,
      "stop": 4324.8,
      "target": 4372.785,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T12:30:00Z",
      "outcome_time": "2026-06-15T17:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T12-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4324.8,
          "entry": 4340.795,
          "stop": 4324.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4338.205,
              "high": 4343.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T12-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-15T12:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4337.4, planned_rr=2.0, touch=2026-06-15T12:25:00Z, outcome=tp_first",
      "entry": 4337.4,
      "stop": 4324.8,
      "target": 4362.6,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-15T12:25:00Z",
      "outcome_time": "2026-06-15T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T12-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4324.8,
          "entry": 4337.4,
          "stop": 4324.8,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4358.65, planned_rr=3.0, touch=2026-06-15T13:50:00Z, outcome=sl_first",
      "entry": 4358.65,
      "stop": 4352.255,
      "target": 4377.837,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T13:50:00Z",
      "outcome_time": "2026-06-15T15:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4352.255,
          "impulse_high": 4369.085,
          "fib_entry_level": "62%",
          "entry": 4358.6504,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4360.856, planned_rr=3.0, touch=2026-06-15T13:50:00Z, outcome=sl_first",
      "entry": 4360.856,
      "stop": 4364.78,
      "target": 4349.086,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T13:50:00Z",
      "outcome_time": "2026-06-15T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4354.455,
          "impulse_high": 4364.78,
          "fib_entry_level": "62%",
          "entry": 4360.8565,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4358.014, planned_rr=3.0, touch=2026-06-15T14:20:00Z, outcome=sl_first",
      "entry": 4358.014,
      "stop": 4354.165,
      "target": 4369.563,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T14:20:00Z",
      "outcome_time": "2026-06-15T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4354.165,
          "impulse_high": 4364.295,
          "fib_entry_level": "62%",
          "entry": 4358.0144,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4360.928, planned_rr=3.0, touch=2026-06-15T14:45:00Z, outcome=tp_first",
      "entry": 4360.928,
      "stop": 4365.23,
      "target": 4348.024,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-15T14:45:00Z",
      "outcome_time": "2026-06-15T16:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4353.91,
          "impulse_high": 4365.23,
          "fib_entry_level": "62%",
          "entry": 4360.9284,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4354.552, planned_rr=2.0, touch=2026-06-15T15:05:00Z, outcome=sl_first",
      "entry": 4354.552,
      "stop": 4359.45,
      "target": 4344.757,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T15:05:00Z",
      "outcome_time": "2026-06-15T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4349.655,
          "impulse_high": 4359.45,
          "fib_entry_level": "50%",
          "entry": 4354.5525,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4352.79,
              "high": 4354.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4355.728, planned_rr=3.0, touch=2026-06-15T15:05:00Z, outcome=sl_first",
      "entry": 4355.728,
      "stop": 4359.45,
      "target": 4344.562,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-15T15:05:00Z",
      "outcome_time": "2026-06-15T15:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4349.655,
          "impulse_high": 4359.45,
          "fib_entry_level": "62%",
          "entry": 4355.7279,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4325.54, planned_rr=2.0, touch=2026-06-15T17:35:00Z, outcome=tp_first",
      "entry": 4325.54,
      "stop": 4329.93,
      "target": 4316.76,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-15T17:35:00Z",
      "outcome_time": "2026-06-15T19:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4321.15,
          "impulse_high": 4329.93,
          "fib_entry_level": "50%",
          "entry": 4325.54,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4325.47,
              "high": 4329.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-15T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-15T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4326.594, planned_rr=3.0, touch=2026-06-15T17:35:00Z, outcome=tp_first",
      "entry": 4326.594,
      "stop": 4329.93,
      "target": 4316.584,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-15T17:35:00Z",
      "outcome_time": "2026-06-15T20:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-15T17-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-15",
        "timestamp": "2026-06-15T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4321.15,
          "impulse_high": 4329.93,
          "fib_entry_level": "62%",
          "entry": 4326.5936,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4325.47,
              "high": 4329.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4369.665,
            "PDL": 4280.395,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4312.568, planned_rr=3.0, touch=2026-06-16T00:35:00Z, outcome=sl_first",
      "entry": 4312.568,
      "stop": 4315.99,
      "target": 4302.302,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T00:35:00Z",
      "outcome_time": "2026-06-16T00:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4306.985,
          "impulse_high": 4315.99,
          "fib_entry_level": "62%",
          "entry": 4312.5680999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4314.662, planned_rr=3.0, touch=2026-06-16T00:55:00Z, outcome=sl_first",
      "entry": 4314.662,
      "stop": 4310.805,
      "target": 4326.233,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T00:55:00Z",
      "outcome_time": "2026-06-16T02:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4310.805,
          "impulse_high": 4320.955,
          "fib_entry_level": "62%",
          "entry": 4314.662,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4314.055,
              "high": 4315.635,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4326.378, planned_rr=2.0, touch=2026-06-16T03:35:00Z, outcome=sl_first",
      "entry": 4326.378,
      "stop": 4319.625,
      "target": 4339.883,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T03:35:00Z",
      "outcome_time": "2026-06-16T05:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4319.625,
          "impulse_high": 4333.13,
          "fib_entry_level": "50%",
          "entry": 4326.3775000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4322.755,
              "high": 4329.095,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T03:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4324.757, planned_rr=3.0, touch=2026-06-16T03:35:00Z, outcome=sl_first",
      "entry": 4324.757,
      "stop": 4319.625,
      "target": 4340.153,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T03:35:00Z",
      "outcome_time": "2026-06-16T05:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T03-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T03:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4319.625,
          "impulse_high": 4333.13,
          "fib_entry_level": "62%",
          "entry": 4324.7569,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4322.755,
              "high": 4329.095,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4323.583, planned_rr=2.0, touch=2026-06-16T05:35:00Z, outcome=sl_first",
      "entry": 4323.583,
      "stop": 4331.0,
      "target": 4308.748,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T05:35:00Z",
      "outcome_time": "2026-06-16T07:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4316.165,
          "impulse_high": 4331.0,
          "fib_entry_level": "50%",
          "entry": 4323.5825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4321.215,
              "high": 4324.635,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4325.363, planned_rr=3.0, touch=2026-06-16T07:00:00Z, outcome=sl_first",
      "entry": 4325.363,
      "stop": 4331.0,
      "target": 4308.451,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T07:00:00Z",
      "outcome_time": "2026-06-16T07:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T05-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4316.165,
          "impulse_high": 4331.0,
          "fib_entry_level": "62%",
          "entry": 4325.3627,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4324.635,
              "high": 4328.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4343.358, planned_rr=3.0, touch=2026-06-16T09:30:00Z, outcome=sl_first",
      "entry": 4343.358,
      "stop": 4346.39,
      "target": 4334.26,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T09:30:00Z",
      "outcome_time": "2026-06-16T09:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4338.41,
          "impulse_high": 4346.39,
          "fib_entry_level": "62%",
          "entry": 4343.3576,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4344.665, planned_rr=2.0, touch=2026-06-16T11:05:00Z, outcome=sl_first",
      "entry": 4344.665,
      "stop": 4349.655,
      "target": 4334.685,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T11:05:00Z",
      "outcome_time": "2026-06-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4339.675,
          "impulse_high": 4349.655,
          "fib_entry_level": "50%",
          "entry": 4344.665,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4343.585,
              "high": 4346.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4345.863, planned_rr=3.0, touch=2026-06-16T12:30:00Z, outcome=sl_first",
      "entry": 4345.863,
      "stop": 4349.655,
      "target": 4334.485,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T12:30:00Z",
      "outcome_time": "2026-06-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4339.675,
          "impulse_high": 4349.655,
          "fib_entry_level": "62%",
          "entry": 4345.8625999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4343.585,
              "high": 4346.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T11-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-16T11:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4345.12, planned_rr=2.0, touch=2026-06-16T11:05:00Z, outcome=tp_first",
      "entry": 4345.12,
      "stop": 4349.655,
      "target": 4336.05,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-16T11:05:00Z",
      "outcome_time": "2026-06-16T11:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T11-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4349.655,
          "entry": 4345.12,
          "stop": 4349.655,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4343.585,
              "high": 4346.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T11-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-16T11:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4341.7, planned_rr=2.0, touch=2026-06-16T11:05:00Z, outcome=sl_first",
      "entry": 4341.7,
      "stop": 4349.655,
      "target": 4325.79,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T11:05:00Z",
      "outcome_time": "2026-06-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T11-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4349.655,
          "entry": 4341.7,
          "stop": 4349.655,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4345.68, planned_rr=2.0, touch=2026-06-16T12:35:00Z, outcome=tp_first",
      "entry": 4345.68,
      "stop": 4341.6,
      "target": 4353.84,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-16T12:35:00Z",
      "outcome_time": "2026-06-16T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4341.6,
          "impulse_high": 4349.76,
          "fib_entry_level": "50%",
          "entry": 4345.68,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4345.11,
              "high": 4348.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4344.701, planned_rr=3.0, touch=2026-06-16T12:35:00Z, outcome=tp_first",
      "entry": 4344.701,
      "stop": 4341.6,
      "target": 4354.003,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-16T12:35:00Z",
      "outcome_time": "2026-06-16T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4341.6,
          "impulse_high": 4349.76,
          "fib_entry_level": "62%",
          "entry": 4344.7008000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T12-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-16T12:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4345.12, planned_rr=2.0, touch=2026-06-16T12:35:00Z, outcome=sl_first",
      "entry": 4345.12,
      "stop": 4349.76,
      "target": 4335.84,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T12:35:00Z",
      "outcome_time": "2026-06-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T12-30-00Z_short_breaker_continuation",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4349.76,
          "entry": 4345.12,
          "stop": 4349.76,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4343.585,
              "high": 4346.655,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4345.13,
              "high": 4348.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4350.966, planned_rr=3.0, touch=2026-06-16T12:50:00Z, outcome=sl_first",
      "entry": 4350.966,
      "stop": 4348.525,
      "target": 4358.291,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T12:50:00Z",
      "outcome_time": "2026-06-16T13:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4348.525,
          "impulse_high": 4354.95,
          "fib_entry_level": "62%",
          "entry": 4350.9664999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T12-45-00Z_short_breaker_continuation",
      "timestamp": "2026-06-16T12:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4345.12, planned_rr=2.0, touch=2026-06-16T13:05:00Z, outcome=tp_first",
      "entry": 4345.12,
      "stop": 4354.95,
      "target": 4325.46,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-16T13:05:00Z",
      "outcome_time": "2026-06-16T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T12-45-00Z_short_breaker_continuation",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4354.95,
          "entry": 4345.12,
          "stop": 4354.95,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4343.585,
              "high": 4346.655,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4345.13,
              "high": 4348.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4339.188, planned_rr=2.0, touch=2026-06-16T13:20:00Z, outcome=tp_first",
      "entry": 4339.188,
      "stop": 4345.13,
      "target": 4327.302,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-16T13:20:00Z",
      "outcome_time": "2026-06-16T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4333.245,
          "impulse_high": 4345.13,
          "fib_entry_level": "50%",
          "entry": 4339.1875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4333.81,
              "high": 4340.685,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4340.614, planned_rr=3.0, touch=2026-06-16T13:30:00Z, outcome=tp_first",
      "entry": 4340.614,
      "stop": 4345.13,
      "target": 4327.065,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-16T13:30:00Z",
      "outcome_time": "2026-06-16T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4333.245,
          "impulse_high": 4345.13,
          "fib_entry_level": "62%",
          "entry": 4340.6137,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4333.81,
              "high": 4340.685,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4336.122, planned_rr=2.0, touch=2026-06-16T13:50:00Z, outcome=tp_first",
      "entry": 4336.122,
      "stop": 4340.575,
      "target": 4327.217,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-16T13:50:00Z",
      "outcome_time": "2026-06-16T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4331.67,
          "impulse_high": 4340.575,
          "fib_entry_level": "50%",
          "entry": 4336.1224999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4333.81,
              "high": 4340.685,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.53,
              "high": 4338.89,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4337.191, planned_rr=3.0, touch=2026-06-16T13:50:00Z, outcome=tp_first",
      "entry": 4337.191,
      "stop": 4340.575,
      "target": 4327.039,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-16T13:50:00Z",
      "outcome_time": "2026-06-16T14:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T13-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4331.67,
          "impulse_high": 4340.575,
          "fib_entry_level": "62%",
          "entry": 4337.1911,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4333.81,
              "high": 4340.685,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4331.53,
              "high": 4338.89,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4328.775, planned_rr=3.0, touch=2026-06-16T15:35:00Z, outcome=sl_first",
      "entry": 4328.775,
      "stop": 4335.535,
      "target": 4308.494,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T15:35:00Z",
      "outcome_time": "2026-06-16T15:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4317.745,
          "impulse_high": 4335.535,
          "fib_entry_level": "62%",
          "entry": 4328.7748,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4328.41,
              "high": 4331.53,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4332.833, planned_rr=2.0, touch=2026-06-16T15:50:00Z, outcome=sl_first",
      "entry": 4332.833,
      "stop": 4322.22,
      "target": 4354.058,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T15:50:00Z",
      "outcome_time": "2026-06-17T04:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4322.22,
          "impulse_high": 4343.445,
          "fib_entry_level": "50%",
          "entry": 4332.8325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4328.865,
              "high": 4334.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T15:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4330.285, planned_rr=3.0, touch=2026-06-16T15:50:00Z, outcome=sl_first",
      "entry": 4330.285,
      "stop": 4322.22,
      "target": 4354.482,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T15:50:00Z",
      "outcome_time": "2026-06-17T04:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T15-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T15:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4322.22,
          "impulse_high": 4343.445,
          "fib_entry_level": "62%",
          "entry": 4330.2855,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4328.865,
              "high": 4334.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4339.6, planned_rr=3.0, touch=2026-06-16T16:05:00Z, outcome=sl_first",
      "entry": 4339.6,
      "stop": 4334.975,
      "target": 4353.473,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T16:05:00Z",
      "outcome_time": "2026-06-16T17:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T16-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4334.975,
          "impulse_high": 4347.145,
          "fib_entry_level": "62%",
          "entry": 4339.5996000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4335.202, planned_rr=2.0, touch=2026-06-16T19:50:00Z, outcome=sl_first",
      "entry": 4335.202,
      "stop": 4339.715,
      "target": 4326.177,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T19:50:00Z",
      "outcome_time": "2026-06-17T00:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4330.69,
          "impulse_high": 4339.715,
          "fib_entry_level": "50%",
          "entry": 4335.202499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4334.245,
              "high": 4336.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4336.285, planned_rr=3.0, touch=2026-06-16T19:50:00Z, outcome=sl_first",
      "entry": 4336.285,
      "stop": 4339.715,
      "target": 4325.997,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T19:50:00Z",
      "outcome_time": "2026-06-17T00:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4330.69,
          "impulse_high": 4339.715,
          "fib_entry_level": "62%",
          "entry": 4336.2855,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4336.095,
              "high": 4340.115,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4334.245,
              "high": 4336.975,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-16T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-16T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4333.04, planned_rr=3.0, touch=2026-06-16T23:50:00Z, outcome=sl_first",
      "entry": 4333.04,
      "stop": 4335.16,
      "target": 4326.678,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-16T23:50:00Z",
      "outcome_time": "2026-06-17T00:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-16T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-16",
        "timestamp": "2026-06-16T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4329.58,
          "impulse_high": 4335.16,
          "fib_entry_level": "62%",
          "entry": 4333.0396,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4354.95,
            "PDL": 4306.11,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4333.006, planned_rr=3.0, touch=2026-06-17T00:45:00Z, outcome=tp_first",
      "entry": 4333.006,
      "stop": 4328.615,
      "target": 4346.179,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-17T00:45:00Z",
      "outcome_time": "2026-06-17T01:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4328.615,
          "impulse_high": 4340.17,
          "fib_entry_level": "62%",
          "entry": 4333.0059,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T00-00-00Z_long_breaker_continuation",
      "timestamp": "2026-06-17T00:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4333.665, planned_rr=2.0, touch=2026-06-17T00:05:00Z, outcome=tp_first",
      "entry": 4333.665,
      "stop": 4328.615,
      "target": 4343.765,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T00:05:00Z",
      "outcome_time": "2026-06-17T01:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T00-00-00Z_long_breaker_continuation",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4328.615,
          "entry": 4333.665000000001,
          "stop": 4328.615,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4333.27,
              "high": 4334.06,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4335.16,
              "high": 4336.445,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T00-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-17T00:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4333.665, planned_rr=2.0, touch=2026-06-17T00:05:00Z, outcome=tp_first",
      "entry": 4333.665,
      "stop": 4328.615,
      "target": 4343.765,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T00:05:00Z",
      "outcome_time": "2026-06-17T01:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T00-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4328.615,
          "entry": 4333.665000000001,
          "stop": 4328.615,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4333.27,
              "high": 4334.06,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4335.16,
              "high": 4336.445,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4340.094, planned_rr=3.0, touch=2026-06-17T01:20:00Z, outcome=sl_first",
      "entry": 4340.094,
      "stop": 4334.265,
      "target": 4357.582,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T01:20:00Z",
      "outcome_time": "2026-06-17T02:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4334.265,
          "impulse_high": 4349.605,
          "fib_entry_level": "62%",
          "entry": 4340.0942000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T04:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4330.321, planned_rr=3.0, touch=2026-06-17T04:20:00Z, outcome=tp_first",
      "entry": 4330.321,
      "stop": 4334.18,
      "target": 4318.744,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-17T04:20:00Z",
      "outcome_time": "2026-06-17T04:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T04-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T04:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4324.025,
          "impulse_high": 4334.18,
          "fib_entry_level": "62%",
          "entry": 4330.3211,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4326.109, planned_rr=3.0, touch=2026-06-17T06:25:00Z, outcome=sl_first",
      "entry": 4326.109,
      "stop": 4329.5,
      "target": 4315.934,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T06:25:00Z",
      "outcome_time": "2026-06-17T06:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4320.575,
          "impulse_high": 4329.5,
          "fib_entry_level": "62%",
          "entry": 4326.1085,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4325.78,
              "high": 4328.66,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T08-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-17T08:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4327.105, planned_rr=2.0, touch=2026-06-17T09:15:00Z, outcome=tp_first",
      "entry": 4327.105,
      "stop": 4317.19,
      "target": 4346.935,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T09:15:00Z",
      "outcome_time": "2026-06-17T14:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T08-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4317.19,
          "entry": 4327.105,
          "stop": 4317.19,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4325.895,
              "high": 4328.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4328.302, planned_rr=3.0, touch=2026-06-17T09:20:00Z, outcome=sl_first",
      "entry": 4328.302,
      "stop": 4325.18,
      "target": 4337.667,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T09:20:00Z",
      "outcome_time": "2026-06-17T11:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T09-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4325.18,
          "impulse_high": 4333.395,
          "fib_entry_level": "62%",
          "entry": 4328.3017,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4325.895,
              "high": 4328.315,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4327.927, planned_rr=2.0, touch=2026-06-17T13:05:00Z, outcome=tp_first",
      "entry": 4327.927,
      "stop": 4323.54,
      "target": 4336.702,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T13:05:00Z",
      "outcome_time": "2026-06-17T13:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4323.54,
          "impulse_high": 4332.315,
          "fib_entry_level": "50%",
          "entry": 4327.9275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4327.665,
              "high": 4331.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4326.874, planned_rr=3.0, touch=2026-06-17T13:05:00Z, outcome=tp_first",
      "entry": 4326.874,
      "stop": 4323.54,
      "target": 4336.878,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-17T13:05:00Z",
      "outcome_time": "2026-06-17T13:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4323.54,
          "impulse_high": 4332.315,
          "fib_entry_level": "62%",
          "entry": 4326.8745,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4336.165, planned_rr=3.0, touch=2026-06-17T13:35:00Z, outcome=tp_first",
      "entry": 4336.165,
      "stop": 4332.665,
      "target": 4346.664,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-17T13:35:00Z",
      "outcome_time": "2026-06-17T14:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4332.665,
          "impulse_high": 4341.875,
          "fib_entry_level": "62%",
          "entry": 4336.1648,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4349.164, planned_rr=3.0, touch=2026-06-17T14:20:00Z, outcome=sl_first",
      "entry": 4349.164,
      "stop": 4341.08,
      "target": 4373.418,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T14:20:00Z",
      "outcome_time": "2026-06-17T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4341.08,
          "impulse_high": 4362.355,
          "fib_entry_level": "62%",
          "entry": 4349.1645,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4357.757, planned_rr=3.0, touch=2026-06-17T14:35:00Z, outcome=tp_first",
      "entry": 4357.757,
      "stop": 4364.09,
      "target": 4338.759,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-17T14:35:00Z",
      "outcome_time": "2026-06-17T14:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4347.425,
          "impulse_high": 4364.09,
          "fib_entry_level": "62%",
          "entry": 4357.7573,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T14-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-17T14:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4327.73, planned_rr=2.0, touch=2026-06-17T18:00:00Z, outcome=sl_first",
      "entry": 4327.73,
      "stop": 4364.09,
      "target": 4255.01,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T18:00:00Z",
      "outcome_time": "2026-06-17T18:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T14-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4364.09,
          "entry": 4327.73,
          "stop": 4364.09,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4327.275,
              "high": 4328.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T14-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-17T14:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4351.965, planned_rr=2.0, touch=2026-06-17T14:35:00Z, outcome=sl_first",
      "entry": 4351.965,
      "stop": 4364.09,
      "target": 4327.715,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T14:35:00Z",
      "outcome_time": "2026-06-17T15:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T14-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4364.09,
          "entry": 4351.965,
          "stop": 4364.09,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4346.159, planned_rr=3.0, touch=2026-06-17T14:50:00Z, outcome=sl_first",
      "entry": 4346.159,
      "stop": 4355.48,
      "target": 4318.194,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T14:50:00Z",
      "outcome_time": "2026-06-17T15:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T14-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4330.95,
          "impulse_high": 4355.48,
          "fib_entry_level": "62%",
          "entry": 4346.1586,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4351.949, planned_rr=3.0, touch=2026-06-17T18:00:00Z, outcome=ambiguous_same_bar",
      "entry": 4351.949,
      "stop": 4346.96,
      "target": 4366.918,
      "planned_rr": 3.0,
      "r": null,
      "entry_touch_time": "2026-06-17T18:00:00Z",
      "outcome_time": "2026-06-17T18:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4346.96,
          "impulse_high": 4360.09,
          "fib_entry_level": "62%",
          "entry": 4351.9494,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4360.225, planned_rr=2.0, touch=2026-06-17T16:35:00Z, outcome=sl_first",
      "entry": 4360.225,
      "stop": 4365.31,
      "target": 4350.055,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T16:35:00Z",
      "outcome_time": "2026-06-17T17:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4355.14,
          "impulse_high": 4365.31,
          "fib_entry_level": "50%",
          "entry": 4360.225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4359.72,
              "high": 4360.695,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4308.51,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4361.445, planned_rr=3.0, touch=2026-06-17T16:35:00Z, outcome=sl_first",
      "entry": 4361.445,
      "stop": 4365.31,
      "target": 4349.852,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T16:35:00Z",
      "outcome_time": "2026-06-17T17:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T16-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4355.14,
          "impulse_high": 4365.31,
          "fib_entry_level": "62%",
          "entry": 4361.4454000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4308.51,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4371.698, planned_rr=2.0, touch=2026-06-17T17:35:00Z, outcome=sl_first",
      "entry": 4371.698,
      "stop": 4360.93,
      "target": 4393.233,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T17:35:00Z",
      "outcome_time": "2026-06-17T18:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4360.93,
          "impulse_high": 4382.465,
          "fib_entry_level": "50%",
          "entry": 4371.6975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4364.005,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T17:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4369.113, planned_rr=3.0, touch=2026-06-17T18:00:00Z, outcome=sl_first",
      "entry": 4369.113,
      "stop": 4360.93,
      "target": 4393.663,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T18:00:00Z",
      "outcome_time": "2026-06-17T18:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T17-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4360.93,
          "impulse_high": 4382.465,
          "fib_entry_level": "62%",
          "entry": 4369.1133,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4364.005,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T17-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-17T17:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4360.208, planned_rr=2.0, touch=2026-06-17T18:00:00Z, outcome=tp_first",
      "entry": 4360.208,
      "stop": 4382.465,
      "target": 4315.693,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T18:00:00Z",
      "outcome_time": "2026-06-17T18:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T17-30-00Z_short_breaker_continuation",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T17:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4382.465,
          "entry": 4360.2075,
          "stop": 4382.465,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4359.72,
              "high": 4360.695,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4308.51,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4328.405, planned_rr=2.0, touch=2026-06-17T18:45:00Z, outcome=tp_first",
      "entry": 4328.405,
      "stop": 4379.505,
      "target": 4226.205,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-17T18:45:00Z",
      "outcome_time": "2026-06-17T19:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T18-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4277.305,
          "impulse_high": 4379.505,
          "fib_entry_level": "50%",
          "entry": 4328.405000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4308.51,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4291.832, planned_rr=3.0, touch=2026-06-17T18:35:00Z, outcome=sl_first",
      "entry": 4291.832,
      "stop": 4270.2,
      "target": 4356.726,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T18:35:00Z",
      "outcome_time": "2026-06-17T19:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T18-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4270.2,
          "impulse_high": 4327.125,
          "fib_entry_level": "62%",
          "entry": 4291.8315,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T18-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-17T18:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4369.188,
      "stop": 4270.2,
      "target": 4567.163,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-06-17T18-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4270.2,
          "entry": 4369.1875,
          "stop": 4270.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4364.005,
              "high": 4374.37,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T18-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-06-17T18:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4323.66, planned_rr=2.0, touch=2026-06-17T18:40:00Z, outcome=sl_first",
      "entry": 4323.66,
      "stop": 4270.2,
      "target": 4430.58,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T18:40:00Z",
      "outcome_time": "2026-06-17T19:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T18-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4270.2,
          "entry": 4323.66,
          "stop": 4270.2,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T19:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4245.995, planned_rr=2.0, touch=2026-06-17T19:20:00Z, outcome=sl_first",
      "entry": 4245.995,
      "stop": 4265.535,
      "target": 4206.915,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T19:20:00Z",
      "outcome_time": "2026-06-17T20:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T19:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4226.455,
          "impulse_high": 4265.535,
          "fib_entry_level": "50%",
          "entry": 4245.995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4235.915,
              "high": 4260.325,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-17T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-17T19:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4250.685, planned_rr=3.0, touch=2026-06-17T20:05:00Z, outcome=sl_first",
      "entry": 4250.685,
      "stop": 4265.535,
      "target": 4206.133,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-17T20:05:00Z",
      "outcome_time": "2026-06-17T20:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-17T19-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-17",
        "timestamp": "2026-06-17T19:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4226.455,
          "impulse_high": 4265.535,
          "fib_entry_level": "62%",
          "entry": 4250.6846,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4235.915,
              "high": 4260.325,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4382.615,
            "PDL": 4219.165,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4315.082, planned_rr=3.0, touch=2026-06-18T02:45:00Z, outcome=sl_first",
      "entry": 4315.082,
      "stop": 4306.83,
      "target": 4339.837,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T02:45:00Z",
      "outcome_time": "2026-06-18T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4306.83,
          "impulse_high": 4328.545,
          "fib_entry_level": "62%",
          "entry": 4315.0817,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4308.07,
              "high": 4315.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T05-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-18T05:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4321.295, planned_rr=2.0, touch=2026-06-18T05:35:00Z, outcome=tp_first",
      "entry": 4321.295,
      "stop": 4324.91,
      "target": 4314.065,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T05:35:00Z",
      "outcome_time": "2026-06-18T05:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T05-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4324.91,
          "entry": 4321.295,
          "stop": 4324.91,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4319.185,
              "high": 4323.405,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4311.815,
              "high": 4315.59,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T05-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-18T05:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4310.665, planned_rr=2.0, touch=2026-06-18T05:40:00Z, outcome=tp_first",
      "entry": 4310.665,
      "stop": 4324.91,
      "target": 4282.175,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T05:40:00Z",
      "outcome_time": "2026-06-18T08:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T05-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4324.91,
          "entry": 4310.665,
          "stop": 4324.91,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4303.132, planned_rr=2.0, touch=2026-06-18T06:05:00Z, outcome=tp_first",
      "entry": 4303.132,
      "stop": 4310.035,
      "target": 4289.327,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T06:05:00Z",
      "outcome_time": "2026-06-18T07:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4296.23,
          "impulse_high": 4310.035,
          "fib_entry_level": "50%",
          "entry": 4303.1325,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4298.99,
              "high": 4303.995,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4304.789, planned_rr=3.0, touch=2026-06-18T06:05:00Z, outcome=tp_first",
      "entry": 4304.789,
      "stop": 4310.035,
      "target": 4289.051,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-18T06:05:00Z",
      "outcome_time": "2026-06-18T07:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4296.23,
          "impulse_high": 4310.035,
          "fib_entry_level": "62%",
          "entry": 4304.7891,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4260.812, planned_rr=2.0, touch=2026-06-18T10:50:00Z, outcome=tp_first",
      "entry": 4260.812,
      "stop": 4266.775,
      "target": 4248.888,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T10:50:00Z",
      "outcome_time": "2026-06-18T11:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4254.85,
          "impulse_high": 4266.775,
          "fib_entry_level": "50%",
          "entry": 4260.8125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4255.995,
              "high": 4263.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4262.243, planned_rr=3.0, touch=2026-06-18T10:50:00Z, outcome=tp_first",
      "entry": 4262.243,
      "stop": 4266.775,
      "target": 4248.649,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-18T10:50:00Z",
      "outcome_time": "2026-06-18T11:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4254.85,
          "impulse_high": 4266.775,
          "fib_entry_level": "62%",
          "entry": 4262.2435,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4255.995,
              "high": 4263.47,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4248.307, planned_rr=2.0, touch=2026-06-18T11:05:00Z, outcome=sl_first",
      "entry": 4248.307,
      "stop": 4255.995,
      "target": 4232.932,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T11:05:00Z",
      "outcome_time": "2026-06-18T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4240.62,
          "impulse_high": 4255.995,
          "fib_entry_level": "50%",
          "entry": 4248.3075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4250.153, planned_rr=3.0, touch=2026-06-18T11:05:00Z, outcome=sl_first",
      "entry": 4250.153,
      "stop": 4255.995,
      "target": 4232.625,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T11:05:00Z",
      "outcome_time": "2026-06-18T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4240.62,
          "impulse_high": 4255.995,
          "fib_entry_level": "62%",
          "entry": 4250.1525,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4249.815,
              "high": 4254.85,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4249.405, planned_rr=2.0, touch=2026-06-18T12:10:00Z, outcome=tp_first",
      "entry": 4249.405,
      "stop": 4240.55,
      "target": 4267.115,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T12:10:00Z",
      "outcome_time": "2026-06-18T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4240.55,
          "impulse_high": 4258.26,
          "fib_entry_level": "50%",
          "entry": 4249.405000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4246.06,
              "high": 4254.39,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4248.165,
              "high": 4252.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4247.28, planned_rr=3.0, touch=2026-06-18T12:10:00Z, outcome=tp_first",
      "entry": 4247.28,
      "stop": 4240.55,
      "target": 4267.469,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-18T12:10:00Z",
      "outcome_time": "2026-06-18T12:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4240.55,
          "impulse_high": 4258.26,
          "fib_entry_level": "62%",
          "entry": 4247.2798,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4246.06,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4250.028, planned_rr=2.0, touch=2026-06-18T12:35:00Z, outcome=sl_first",
      "entry": 4250.028,
      "stop": 4258.695,
      "target": 4232.693,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T12:35:00Z",
      "outcome_time": "2026-06-18T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4241.36,
          "impulse_high": 4258.695,
          "fib_entry_level": "50%",
          "entry": 4250.0275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4249.815,
              "high": 4254.85,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4252.108, planned_rr=3.0, touch=2026-06-18T12:35:00Z, outcome=sl_first",
      "entry": 4252.108,
      "stop": 4258.695,
      "target": 4232.346,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T12:35:00Z",
      "outcome_time": "2026-06-18T13:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4241.36,
          "impulse_high": 4258.695,
          "fib_entry_level": "62%",
          "entry": 4252.1077,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4249.815,
              "high": 4254.85,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4252.205, planned_rr=2.0, touch=2026-06-18T13:05:00Z, outcome=tp_first",
      "entry": 4252.205,
      "stop": 4245.09,
      "target": 4266.435,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T13:05:00Z",
      "outcome_time": "2026-06-18T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4245.09,
          "impulse_high": 4259.32,
          "fib_entry_level": "50%",
          "entry": 4252.205,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4246.06,
              "high": 4254.39,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4248.165,
              "high": 4252.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4250.497, planned_rr=3.0, touch=2026-06-18T13:05:00Z, outcome=tp_first",
      "entry": 4250.497,
      "stop": 4245.09,
      "target": 4266.72,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-18T13:05:00Z",
      "outcome_time": "2026-06-18T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4245.09,
          "impulse_high": 4259.32,
          "fib_entry_level": "62%",
          "entry": 4250.4974,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4246.06,
              "high": 4254.39,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4248.165,
              "high": 4252.815,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4248.722, planned_rr=2.0, touch=2026-06-18T14:15:00Z, outcome=tp_first",
      "entry": 4248.722,
      "stop": 4257.98,
      "target": 4230.208,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-18T14:15:00Z",
      "outcome_time": "2026-06-18T15:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4239.465,
          "impulse_high": 4257.98,
          "fib_entry_level": "50%",
          "entry": 4248.7225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4250.944, planned_rr=3.0, touch=2026-06-18T14:20:00Z, outcome=tp_first",
      "entry": 4250.944,
      "stop": 4257.98,
      "target": 4229.837,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-18T14:20:00Z",
      "outcome_time": "2026-06-18T15:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4239.465,
          "impulse_high": 4257.98,
          "fib_entry_level": "62%",
          "entry": 4250.9443,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4249.815,
              "high": 4254.85,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4248.165,
              "high": 4254.39,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4211.68, planned_rr=2.0, touch=2026-06-18T19:05:00Z, outcome=sl_first",
      "entry": 4211.68,
      "stop": 4219.29,
      "target": 4196.46,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T19:05:00Z",
      "outcome_time": "2026-06-18T20:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4204.07,
          "impulse_high": 4219.29,
          "fib_entry_level": "50%",
          "entry": 4211.68,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4208.935,
              "high": 4218.34,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-18T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-18T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4213.506, planned_rr=3.0, touch=2026-06-18T19:40:00Z, outcome=sl_first",
      "entry": 4213.506,
      "stop": 4219.29,
      "target": 4196.156,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-18T19:40:00Z",
      "outcome_time": "2026-06-18T20:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-18T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-18",
        "timestamp": "2026-06-18T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4204.07,
          "impulse_high": 4219.29,
          "fib_entry_level": "62%",
          "entry": 4213.5064,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4208.935,
              "high": 4218.34,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4213.48,
              "high": 4215.225,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4329.865,
            "PDL": 4201.495,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-19T04:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4149.31, planned_rr=2.0, touch=2026-06-19T04:15:00Z, outcome=tp_first",
      "entry": 4149.31,
      "stop": 4155.33,
      "target": 4137.27,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-19T04:15:00Z",
      "outcome_time": "2026-06-19T04:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T04:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4143.29,
          "impulse_high": 4155.33,
          "fib_entry_level": "50%",
          "entry": 4149.3099999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4141.615,
              "high": 4149.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-19T04:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4150.755, planned_rr=3.0, touch=2026-06-19T06:55:00Z, outcome=sl_first",
      "entry": 4150.755,
      "stop": 4155.33,
      "target": 4137.029,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-19T06:55:00Z",
      "outcome_time": "2026-06-19T07:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T04-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T04:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4143.29,
          "impulse_high": 4155.33,
          "fib_entry_level": "62%",
          "entry": 4150.7548,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-19T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4140.568, planned_rr=2.0, touch=2026-06-19T04:35:00Z, outcome=tp_first",
      "entry": 4140.568,
      "stop": 4147.645,
      "target": 4126.412,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-19T04:35:00Z",
      "outcome_time": "2026-06-19T04:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4133.49,
          "impulse_high": 4147.645,
          "fib_entry_level": "50%",
          "entry": 4140.5675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4136.74,
              "high": 4141.615,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-19T04:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4142.266, planned_rr=3.0, touch=2026-06-19T04:35:00Z, outcome=tp_first",
      "entry": 4142.266,
      "stop": 4147.645,
      "target": 4126.129,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-19T04:35:00Z",
      "outcome_time": "2026-06-19T04:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T04-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T04:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4133.49,
          "impulse_high": 4147.645,
          "fib_entry_level": "62%",
          "entry": 4142.2661,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4141.615,
              "high": 4149.83,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T04-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-19T04:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4132.364, planned_rr=3.0, touch=2026-06-19T04:50:00Z, outcome=sl_first",
      "entry": 4132.364,
      "stop": 4136.74,
      "target": 4119.237,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-19T04:50:00Z",
      "outcome_time": "2026-06-19T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T04-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T04:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4125.225,
          "impulse_high": 4136.74,
          "fib_entry_level": "62%",
          "entry": 4132.3643,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4131.605,
              "high": 4133.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T13-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-19T13:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4159.708, planned_rr=2.0, touch=2026-06-19T13:40:00Z, outcome=sl_first",
      "entry": 4159.708,
      "stop": 4183.125,
      "target": 4112.873,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-19T13:40:00Z",
      "outcome_time": "2026-06-22T00:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T13-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4183.125,
          "entry": 4159.7075,
          "stop": 4183.125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4158.235,
              "high": 4161.18,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4161.18,
              "high": 4167.45,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-19T13-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-19T13:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4170.01, planned_rr=2.0, touch=2026-06-19T13:05:00Z, outcome=sl_first",
      "entry": 4170.01,
      "stop": 4183.125,
      "target": 4143.78,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-19T13:05:00Z",
      "outcome_time": "2026-06-19T13:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-19T13-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-19",
        "timestamp": "2026-06-19T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4183.125,
          "entry": 4170.01,
          "stop": 4183.125,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-21T22-00-00Z_short_breaker_continuation",
      "timestamp": "2026-06-21T22:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4150.613, planned_rr=2.0, touch=2026-06-21T22:10:00Z, outcome=sl_first",
      "entry": 4150.613,
      "stop": 4160.11,
      "target": 4131.618,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-21T22:10:00Z",
      "outcome_time": "2026-06-21T23:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-21T22-00-00Z_short_breaker_continuation",
        "date": "2026-06-21",
        "timestamp": "2026-06-21T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4160.11,
          "entry": 4150.6125,
          "stop": 4160.11,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4147.17,
              "high": 4154.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-21T22-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-21T22:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4150.613, planned_rr=2.0, touch=2026-06-21T22:10:00Z, outcome=sl_first",
      "entry": 4150.613,
      "stop": 4160.11,
      "target": 4131.618,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-21T22:10:00Z",
      "outcome_time": "2026-06-21T23:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-21T22-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-21",
        "timestamp": "2026-06-21T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4160.11,
          "entry": 4150.6125,
          "stop": 4160.11,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4147.17,
              "high": 4154.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-21T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4149.573, planned_rr=2.0, touch=2026-06-22T00:00:00Z, outcome=sl_first",
      "entry": 4149.573,
      "stop": 4156.965,
      "target": 4134.788,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T00:00:00Z",
      "outcome_time": "2026-06-22T00:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-21",
        "timestamp": "2026-06-21T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4142.18,
          "impulse_high": 4156.965,
          "fib_entry_level": "50%",
          "entry": 4149.5725,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4147.17,
              "high": 4154.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-21T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4151.347, planned_rr=3.0, touch=2026-06-22T00:10:00Z, outcome=sl_first",
      "entry": 4151.347,
      "stop": 4156.965,
      "target": 4134.492,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T00:10:00Z",
      "outcome_time": "2026-06-22T00:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-21T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-21",
        "timestamp": "2026-06-21T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4142.18,
          "impulse_high": 4156.965,
          "fib_entry_level": "62%",
          "entry": 4151.3467,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4147.17,
              "high": 4154.055,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4210.695,
            "PDL": 4121.955,
            "PWH": 4382.615,
            "PWL": 4121.955
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T06-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-22T06:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4196.677, planned_rr=2.0, touch=2026-06-22T07:30:00Z, outcome=sl_first",
      "entry": 4196.677,
      "stop": 4207.355,
      "target": 4175.323,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T07:30:00Z",
      "outcome_time": "2026-06-22T09:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T06-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4207.355,
          "entry": 4196.6775,
          "stop": 4207.355,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4196.25,
              "high": 4197.105,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T06-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-22T06:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4197.59, planned_rr=2.0, touch=2026-06-22T06:55:00Z, outcome=sl_first",
      "entry": 4197.59,
      "stop": 4207.355,
      "target": 4178.06,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T06:55:00Z",
      "outcome_time": "2026-06-22T09:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T06-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T06:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4207.355,
          "entry": 4197.59,
          "stop": 4207.355,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4205.864, planned_rr=3.0, touch=2026-06-22T12:35:00Z, outcome=tp_first",
      "entry": 4205.864,
      "stop": 4208.885,
      "target": 4196.801,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-22T12:35:00Z",
      "outcome_time": "2026-06-22T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4200.935,
          "impulse_high": 4208.885,
          "fib_entry_level": "62%",
          "entry": 4205.8640000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4205.0,
              "high": 4206.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4198.62, planned_rr=2.0, touch=2026-06-22T12:50:00Z, outcome=tp_first",
      "entry": 4198.62,
      "stop": 4205.0,
      "target": 4185.86,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T12:50:00Z",
      "outcome_time": "2026-06-22T13:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4192.24,
          "impulse_high": 4205.0,
          "fib_entry_level": "50%",
          "entry": 4198.62,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4197.13,
              "high": 4200.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4200.151, planned_rr=3.0, touch=2026-06-22T12:50:00Z, outcome=tp_first",
      "entry": 4200.151,
      "stop": 4205.0,
      "target": 4185.605,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-22T12:50:00Z",
      "outcome_time": "2026-06-22T13:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4192.24,
          "impulse_high": 4205.0,
          "fib_entry_level": "62%",
          "entry": 4200.1512,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4197.13,
              "high": 4200.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4191.307, planned_rr=2.0, touch=2026-06-22T13:20:00Z, outcome=sl_first",
      "entry": 4191.307,
      "stop": 4197.025,
      "target": 4179.873,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T13:20:00Z",
      "outcome_time": "2026-06-22T13:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4185.59,
          "impulse_high": 4197.025,
          "fib_entry_level": "50%",
          "entry": 4191.3075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4188.865,
              "high": 4197.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4192.68, planned_rr=3.0, touch=2026-06-22T13:20:00Z, outcome=sl_first",
      "entry": 4192.68,
      "stop": 4197.025,
      "target": 4179.644,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T13:20:00Z",
      "outcome_time": "2026-06-22T13:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4185.59,
          "impulse_high": 4197.025,
          "fib_entry_level": "62%",
          "entry": 4192.6797,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4188.865,
              "high": 4197.13,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4198.747, planned_rr=2.0, touch=2026-06-22T14:45:00Z, outcome=tp_first",
      "entry": 4198.747,
      "stop": 4206.23,
      "target": 4183.782,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T14:45:00Z",
      "outcome_time": "2026-06-22T15:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4191.265,
          "impulse_high": 4206.23,
          "fib_entry_level": "50%",
          "entry": 4198.7474999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4197.13,
              "high": 4200.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4200.543, planned_rr=3.0, touch=2026-06-22T14:45:00Z, outcome=tp_first",
      "entry": 4200.543,
      "stop": 4206.23,
      "target": 4183.483,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-22T14:45:00Z",
      "outcome_time": "2026-06-22T15:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4191.265,
          "impulse_high": 4206.23,
          "fib_entry_level": "62%",
          "entry": 4200.5433,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4197.13,
              "high": 4200.935,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4193.137, planned_rr=2.0, touch=2026-06-22T16:55:00Z, outcome=tp_first",
      "entry": 4193.137,
      "stop": 4198.08,
      "target": 4183.252,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T16:55:00Z",
      "outcome_time": "2026-06-22T17:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T15-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4188.195,
          "impulse_high": 4198.08,
          "fib_entry_level": "50%",
          "entry": 4193.1375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4188.865,
              "high": 4197.13,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4190.58,
              "high": 4194.835,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4185.507, planned_rr=2.0, touch=2026-06-22T15:35:00Z, outcome=tp_first",
      "entry": 4185.507,
      "stop": 4190.58,
      "target": 4175.362,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T15:35:00Z",
      "outcome_time": "2026-06-22T15:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4180.435,
          "impulse_high": 4190.58,
          "fib_entry_level": "50%",
          "entry": 4185.5075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4185.14,
              "high": 4188.195,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4186.725, planned_rr=3.0, touch=2026-06-22T15:35:00Z, outcome=tp_first",
      "entry": 4186.725,
      "stop": 4190.58,
      "target": 4175.16,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-22T15:35:00Z",
      "outcome_time": "2026-06-22T15:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T15-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4180.435,
          "impulse_high": 4190.58,
          "fib_entry_level": "62%",
          "entry": 4186.7249,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4185.14,
              "high": 4188.195,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T22-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-22T22:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4190.68, planned_rr=2.0, touch=2026-06-22T22:35:00Z, outcome=sl_first",
      "entry": 4190.68,
      "stop": 4194.86,
      "target": 4182.32,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T22:35:00Z",
      "outcome_time": "2026-06-22T23:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T22-30-00Z_short_breaker_continuation",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4194.86,
          "entry": 4190.68,
          "stop": 4194.86,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.33,
              "high": 4191.03,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T22-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-22T22:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4190.68, planned_rr=2.0, touch=2026-06-22T22:35:00Z, outcome=sl_first",
      "entry": 4190.68,
      "stop": 4194.86,
      "target": 4182.32,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T22:35:00Z",
      "outcome_time": "2026-06-22T23:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T22-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4194.86,
          "entry": 4190.68,
          "stop": 4194.86,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.33,
              "high": 4191.03,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4192.518, planned_rr=3.0, touch=2026-06-22T23:35:00Z, outcome=sl_first",
      "entry": 4192.518,
      "stop": 4190.84,
      "target": 4197.551,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-22T23:35:00Z",
      "outcome_time": "2026-06-22T23:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T23-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4190.84,
          "impulse_high": 4195.255,
          "fib_entry_level": "62%",
          "entry": 4192.5177,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T23-30-00Z_short_breaker_continuation",
      "timestamp": "2026-06-22T23:30:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4191.023, planned_rr=2.0, touch=2026-06-22T23:45:00Z, outcome=tp_first",
      "entry": 4191.023,
      "stop": 4195.255,
      "target": 4182.557,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T23:45:00Z",
      "outcome_time": "2026-06-23T00:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T23-30-00Z_short_breaker_continuation",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4195.255,
          "entry": 4191.0225,
          "stop": 4195.255,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4190.84,
              "high": 4195.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4190.868, planned_rr=2.0, touch=2026-06-22T23:50:00Z, outcome=tp_first",
      "entry": 4190.868,
      "stop": 4194.86,
      "target": 4182.883,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-22T23:50:00Z",
      "outcome_time": "2026-06-23T00:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4186.875,
          "impulse_high": 4194.86,
          "fib_entry_level": "50%",
          "entry": 4190.8675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4190.84,
              "high": 4195.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-22T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4191.826, planned_rr=3.0, touch=2026-06-23T00:00:00Z, outcome=tp_first",
      "entry": 4191.826,
      "stop": 4194.86,
      "target": 4182.723,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T00:00:00Z",
      "outcome_time": "2026-06-23T00:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-22T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-22",
        "timestamp": "2026-06-22T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4186.875,
          "impulse_high": 4194.86,
          "fib_entry_level": "62%",
          "entry": 4191.825699999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4190.84,
              "high": 4195.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4221.37,
            "PDL": 4136.695,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4187.14, planned_rr=3.0, touch=2026-06-23T00:05:00Z, outcome=sl_first",
      "entry": 4187.14,
      "stop": 4192.445,
      "target": 4171.226,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T00:05:00Z",
      "outcome_time": "2026-06-23T00:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4178.485,
          "impulse_high": 4192.445,
          "fib_entry_level": "62%",
          "entry": 4187.1402,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4186.085,
              "high": 4190.19,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4181.572, planned_rr=3.0, touch=2026-06-23T00:20:00Z, outcome=sl_first",
      "entry": 4181.572,
      "stop": 4178.92,
      "target": 4189.53,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T00:20:00Z",
      "outcome_time": "2026-06-23T00:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4178.92,
          "impulse_high": 4185.9,
          "fib_entry_level": "62%",
          "entry": 4181.5724,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4187.908, planned_rr=2.0, touch=2026-06-23T00:40:00Z, outcome=sl_first",
      "entry": 4187.908,
      "stop": 4182.34,
      "target": 4199.043,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T00:40:00Z",
      "outcome_time": "2026-06-23T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4182.34,
          "impulse_high": 4193.475,
          "fib_entry_level": "50%",
          "entry": 4187.9075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4185.9,
              "high": 4190.19,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4186.571, planned_rr=3.0, touch=2026-06-23T00:40:00Z, outcome=sl_first",
      "entry": 4186.571,
      "stop": 4182.34,
      "target": 4199.265,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T00:40:00Z",
      "outcome_time": "2026-06-23T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4182.34,
          "impulse_high": 4193.475,
          "fib_entry_level": "62%",
          "entry": 4186.5713000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4185.9,
              "high": 4190.19,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T01-00-00Z_short_breaker_continuation",
      "timestamp": "2026-06-23T01:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4191.023, planned_rr=2.0, touch=2026-06-23T01:05:00Z, outcome=tp_first",
      "entry": 4191.023,
      "stop": 4198.605,
      "target": 4175.858,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T01:05:00Z",
      "outcome_time": "2026-06-23T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T01-00-00Z_short_breaker_continuation",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4198.605,
          "entry": 4191.0225,
          "stop": 4198.605,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4190.84,
              "high": 4195.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T01-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-23T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4191.023, planned_rr=2.0, touch=2026-06-23T01:05:00Z, outcome=tp_first",
      "entry": 4191.023,
      "stop": 4198.605,
      "target": 4175.858,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T01:05:00Z",
      "outcome_time": "2026-06-23T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T01-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4198.605,
          "entry": 4191.0225,
          "stop": 4198.605,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4190.77,
              "high": 4191.275,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4190.84,
              "high": 4195.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T01-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-23T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4185.36, planned_rr=2.0, touch=2026-06-23T01:10:00Z, outcome=tp_first",
      "entry": 4185.36,
      "stop": 4198.605,
      "target": 4158.87,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T01:10:00Z",
      "outcome_time": "2026-06-23T01:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T01-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4198.605,
          "entry": 4185.36,
          "stop": 4198.605,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4154.925, planned_rr=3.0, touch=2026-06-23T01:50:00Z, outcome=sl_first",
      "entry": 4154.925,
      "stop": 4150.025,
      "target": 4169.625,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T01:50:00Z",
      "outcome_time": "2026-06-23T01:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4150.025,
          "impulse_high": 4162.92,
          "fib_entry_level": "62%",
          "entry": 4154.9250999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4157.752, planned_rr=3.0, touch=2026-06-23T02:05:00Z, outcome=sl_first",
      "entry": 4157.752,
      "stop": 4163.175,
      "target": 4141.485,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T02:05:00Z",
      "outcome_time": "2026-06-23T02:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4148.905,
          "impulse_high": 4163.175,
          "fib_entry_level": "62%",
          "entry": 4157.7524,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4157.206, planned_rr=3.0, touch=2026-06-23T02:30:00Z, outcome=sl_first",
      "entry": 4157.206,
      "stop": 4153.41,
      "target": 4168.595,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T02:30:00Z",
      "outcome_time": "2026-06-23T02:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T02-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4153.41,
          "impulse_high": 4163.4,
          "fib_entry_level": "62%",
          "entry": 4157.2062,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T04-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T04:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4130.759, planned_rr=3.0, touch=2026-06-23T04:55:00Z, outcome=tp_first",
      "entry": 4130.759,
      "stop": 4140.525,
      "target": 4101.461,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T04:55:00Z",
      "outcome_time": "2026-06-23T07:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T04-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T04:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4114.825,
          "impulse_high": 4140.525,
          "fib_entry_level": "62%",
          "entry": 4130.759,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4123.946, planned_rr=3.0, touch=2026-06-23T05:25:00Z, outcome=sl_first",
      "entry": 4123.946,
      "stop": 4115.58,
      "target": 4149.043,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T05:25:00Z",
      "outcome_time": "2026-06-23T06:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4115.58,
          "impulse_high": 4137.595,
          "fib_entry_level": "62%",
          "entry": 4123.9457,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4111.68, planned_rr=2.0, touch=2026-06-23T07:35:00Z, outcome=tp_first",
      "entry": 4111.68,
      "stop": 4119.585,
      "target": 4095.87,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T07:35:00Z",
      "outcome_time": "2026-06-23T08:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4103.775,
          "impulse_high": 4119.585,
          "fib_entry_level": "50%",
          "entry": 4111.68,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4108.205,
              "high": 4113.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4113.577, planned_rr=3.0, touch=2026-06-23T07:35:00Z, outcome=tp_first",
      "entry": 4113.577,
      "stop": 4119.585,
      "target": 4095.554,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T07:35:00Z",
      "outcome_time": "2026-06-23T08:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4103.775,
          "impulse_high": 4119.585,
          "fib_entry_level": "62%",
          "entry": 4113.5772,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4108.205,
              "high": 4113.84,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T08:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4102.15, planned_rr=3.0, touch=2026-06-23T08:35:00Z, outcome=tp_first",
      "entry": 4102.15,
      "stop": 4096.695,
      "target": 4118.515,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T08:35:00Z",
      "outcome_time": "2026-06-23T09:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T08-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T08:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4096.695,
          "impulse_high": 4111.05,
          "fib_entry_level": "62%",
          "entry": 4102.1499,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4123.63, planned_rr=2.0, touch=2026-06-23T11:05:00Z, outcome=sl_first",
      "entry": 4123.63,
      "stop": 4117.44,
      "target": 4136.01,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T11:05:00Z",
      "outcome_time": "2026-06-23T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4117.44,
          "impulse_high": 4129.82,
          "fib_entry_level": "50%",
          "entry": 4123.629999999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4122.375,
              "high": 4126.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4122.144, planned_rr=3.0, touch=2026-06-23T11:05:00Z, outcome=sl_first",
      "entry": 4122.144,
      "stop": 4117.44,
      "target": 4136.258,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T11:05:00Z",
      "outcome_time": "2026-06-23T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4117.44,
          "impulse_high": 4129.82,
          "fib_entry_level": "62%",
          "entry": 4122.144399999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4120.2, planned_rr=2.0, touch=2026-06-23T12:05:00Z, outcome=tp_first",
      "entry": 4120.2,
      "stop": 4127.48,
      "target": 4105.64,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T12:05:00Z",
      "outcome_time": "2026-06-23T13:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4112.92,
          "impulse_high": 4127.48,
          "fib_entry_level": "50%",
          "entry": 4120.2,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4118.42,
              "high": 4126.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4121.947, planned_rr=3.0, touch=2026-06-23T12:05:00Z, outcome=sl_first",
      "entry": 4121.947,
      "stop": 4127.48,
      "target": 4105.349,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T12:05:00Z",
      "outcome_time": "2026-06-23T13:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4112.92,
          "impulse_high": 4127.48,
          "fib_entry_level": "62%",
          "entry": 4121.9472,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4118.42,
              "high": 4126.36,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4132.485, planned_rr=2.0, touch=2026-06-23T13:50:00Z, outcome=sl_first",
      "entry": 4132.485,
      "stop": 4124.58,
      "target": 4148.295,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T13:50:00Z",
      "outcome_time": "2026-06-23T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4124.58,
          "impulse_high": 4140.39,
          "fib_entry_level": "50%",
          "entry": 4132.485000000001,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4128.87,
              "high": 4133.145,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4130.87,
              "high": 4134.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T13:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4130.588, planned_rr=3.0, touch=2026-06-23T14:25:00Z, outcome=sl_first",
      "entry": 4130.588,
      "stop": 4124.58,
      "target": 4148.611,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T14:25:00Z",
      "outcome_time": "2026-06-23T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T13-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T13:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4124.58,
          "impulse_high": 4140.39,
          "fib_entry_level": "62%",
          "entry": 4130.5878,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4128.87,
              "high": 4133.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T15:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4132.359, planned_rr=3.0, touch=2026-06-23T16:55:00Z, outcome=sl_first",
      "entry": 4132.359,
      "stop": 4126.56,
      "target": 4149.755,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T16:55:00Z",
      "outcome_time": "2026-06-23T18:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T15-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T15:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4126.56,
          "impulse_high": 4141.82,
          "fib_entry_level": "62%",
          "entry": 4132.3588,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4128.87,
              "high": 4133.145,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4130.87,
              "high": 4134.0,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T16:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4138.329, planned_rr=3.0, touch=2026-06-23T16:55:00Z, outcome=sl_first",
      "entry": 4138.329,
      "stop": 4134.995,
      "target": 4148.333,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T16:55:00Z",
      "outcome_time": "2026-06-23T16:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T16-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T16:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4134.995,
          "impulse_high": 4143.77,
          "fib_entry_level": "62%",
          "entry": 4138.3295,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4139.268, planned_rr=3.0, touch=2026-06-23T16:50:00Z, outcome=tp_first",
      "entry": 4139.268,
      "stop": 4143.94,
      "target": 4125.252,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T16:50:00Z",
      "outcome_time": "2026-06-23T18:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T16-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4131.645,
          "impulse_high": 4143.94,
          "fib_entry_level": "62%",
          "entry": 4139.2679,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T16-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-23T16:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4133.093, planned_rr=2.0, touch=2026-06-23T16:55:00Z, outcome=tp_first",
      "entry": 4133.093,
      "stop": 4143.94,
      "target": 4111.398,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T16:55:00Z",
      "outcome_time": "2026-06-23T20:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T16-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4143.94,
          "entry": 4133.092500000001,
          "stop": 4143.94,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4133.04,
              "high": 4133.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4110.067, planned_rr=2.0, touch=2026-06-23T22:20:00Z, outcome=tp_first",
      "entry": 4110.067,
      "stop": 4115.235,
      "target": 4099.732,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-23T22:20:00Z",
      "outcome_time": "2026-06-23T22:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4104.9,
          "impulse_high": 4115.235,
          "fib_entry_level": "50%",
          "entry": 4110.067499999999,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4108.56,
              "high": 4111.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4111.308, planned_rr=3.0, touch=2026-06-23T22:20:00Z, outcome=tp_first",
      "entry": 4111.308,
      "stop": 4115.235,
      "target": 4099.526,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-23T22:20:00Z",
      "outcome_time": "2026-06-23T22:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4104.9,
          "impulse_high": 4115.235,
          "fib_entry_level": "62%",
          "entry": 4111.307699999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4108.56,
              "high": 4111.375,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-23T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-23T23:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4091.764, planned_rr=3.0, touch=2026-06-23T23:35:00Z, outcome=sl_first",
      "entry": 4091.764,
      "stop": 4098.425,
      "target": 4071.779,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-23T23:35:00Z",
      "outcome_time": "2026-06-23T23:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-23T23-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-23",
        "timestamp": "2026-06-23T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4080.895,
          "impulse_high": 4098.425,
          "fib_entry_level": "62%",
          "entry": 4091.7636,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4198.605,
            "PDL": 4091.03,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4101.67, planned_rr=2.0, touch=2026-06-24T00:20:00Z, outcome=tp_first",
      "entry": 4101.67,
      "stop": 4109.52,
      "target": 4085.97,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T00:20:00Z",
      "outcome_time": "2026-06-24T01:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4093.82,
          "impulse_high": 4109.52,
          "fib_entry_level": "50%",
          "entry": 4101.67,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4101.05,
              "high": 4103.64,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4086.764, planned_rr=3.0, touch=2026-06-24T01:10:00Z, outcome=sl_first",
      "entry": 4086.764,
      "stop": 4097.945,
      "target": 4053.219,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-24T01:10:00Z",
      "outcome_time": "2026-06-24T01:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4068.52,
          "impulse_high": 4097.945,
          "fib_entry_level": "62%",
          "entry": 4086.7635,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4067.434, planned_rr=3.0, touch=2026-06-24T02:35:00Z, outcome=sl_first",
      "entry": 4067.434,
      "stop": 4076.85,
      "target": 4039.184,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-24T02:35:00Z",
      "outcome_time": "2026-06-24T05:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4052.07,
          "impulse_high": 4076.85,
          "fib_entry_level": "62%",
          "entry": 4067.4336,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T06-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-24T06:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4087.72, planned_rr=2.0, touch=2026-06-24T06:20:00Z, outcome=tp_first",
      "entry": 4087.72,
      "stop": 4097.73,
      "target": 4067.7,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T06:20:00Z",
      "outcome_time": "2026-06-24T09:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T06-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4097.73,
          "entry": 4087.72,
          "stop": 4097.73,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4081.495, planned_rr=3.0, touch=2026-06-24T07:50:00Z, outcome=sl_first",
      "entry": 4081.495,
      "stop": 4086.215,
      "target": 4067.337,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-24T07:50:00Z",
      "outcome_time": "2026-06-24T08:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4073.795,
          "impulse_high": 4086.215,
          "fib_entry_level": "62%",
          "entry": 4081.4954000000002,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4051.682, planned_rr=2.0, touch=2026-06-24T11:05:00Z, outcome=tp_first",
      "entry": 4051.682,
      "stop": 4058.615,
      "target": 4037.818,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T11:05:00Z",
      "outcome_time": "2026-06-24T11:15:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4044.75,
          "impulse_high": 4058.615,
          "fib_entry_level": "50%",
          "entry": 4051.6825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4046.955,
              "high": 4054.6,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4053.346, planned_rr=3.0, touch=2026-06-24T11:05:00Z, outcome=tp_first",
      "entry": 4053.346,
      "stop": 4058.615,
      "target": 4037.54,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-24T11:05:00Z",
      "outcome_time": "2026-06-24T12:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4044.75,
          "impulse_high": 4058.615,
          "fib_entry_level": "62%",
          "entry": 4053.3462999999997,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4046.955,
              "high": 4054.6,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4024.297, planned_rr=2.0, touch=2026-06-24T12:25:00Z, outcome=tp_first",
      "entry": 4024.297,
      "stop": 4042.08,
      "target": 3988.732,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T12:25:00Z",
      "outcome_time": "2026-06-24T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4006.515,
          "impulse_high": 4042.08,
          "fib_entry_level": "50%",
          "entry": 4024.2974999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4020.935,
              "high": 4035.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4028.565, planned_rr=3.0, touch=2026-06-24T12:25:00Z, outcome=tp_first",
      "entry": 4028.565,
      "stop": 4042.08,
      "target": 3988.021,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-24T12:25:00Z",
      "outcome_time": "2026-06-24T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4006.515,
          "impulse_high": 4042.08,
          "fib_entry_level": "62%",
          "entry": 4028.5652999999998,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4020.935,
              "high": 4035.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4002.69, planned_rr=2.0, touch=2026-06-24T12:50:00Z, outcome=tp_first",
      "entry": 4002.69,
      "stop": 4017.725,
      "target": 3972.62,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T12:50:00Z",
      "outcome_time": "2026-06-24T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3987.655,
          "impulse_high": 4017.725,
          "fib_entry_level": "50%",
          "entry": 4002.69,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3995.74,
              "high": 4007.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4006.298, planned_rr=3.0, touch=2026-06-24T12:50:00Z, outcome=tp_first",
      "entry": 4006.298,
      "stop": 4017.725,
      "target": 3972.019,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-24T12:50:00Z",
      "outcome_time": "2026-06-24T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3987.655,
          "impulse_high": 4017.725,
          "fib_entry_level": "62%",
          "entry": 4006.2984,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3995.74,
              "high": 4007.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3981.335, planned_rr=2.0, touch=2026-06-24T13:05:00Z, outcome=sl_first",
      "entry": 3981.335,
      "stop": 3995.74,
      "target": 3952.525,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-24T13:05:00Z",
      "outcome_time": "2026-06-24T13:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3966.93,
          "impulse_high": 3995.74,
          "fib_entry_level": "50%",
          "entry": 3981.335,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3977.28,
              "high": 3987.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3984.792, planned_rr=3.0, touch=2026-06-24T13:05:00Z, outcome=sl_first",
      "entry": 3984.792,
      "stop": 3995.74,
      "target": 3951.949,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-24T13:05:00Z",
      "outcome_time": "2026-06-24T13:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3966.93,
          "impulse_high": 3995.74,
          "fib_entry_level": "62%",
          "entry": 3984.7922,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3977.28,
              "high": 3987.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4029.983, planned_rr=2.0, touch=2026-06-24T14:05:00Z, outcome=tp_first",
      "entry": 4029.983,
      "stop": 4041.025,
      "target": 4007.898,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-24T14:05:00Z",
      "outcome_time": "2026-06-24T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4018.94,
          "impulse_high": 4041.025,
          "fib_entry_level": "50%",
          "entry": 4029.9825,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4020.935,
              "high": 4035.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-24T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-24T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4032.633, planned_rr=3.0, touch=2026-06-24T14:30:00Z, outcome=tp_first",
      "entry": 4032.633,
      "stop": 4041.025,
      "target": 4007.456,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-24T14:30:00Z",
      "outcome_time": "2026-06-24T14:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-24T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-24",
        "timestamp": "2026-06-24T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4018.94,
          "impulse_high": 4041.025,
          "fib_entry_level": "62%",
          "entry": 4032.6327,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4020.935,
              "high": 4035.33,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.235,
            "PDL": 3959.08,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4000.698, planned_rr=2.0, touch=2026-06-25T00:20:00Z, outcome=tp_first",
      "entry": 4000.698,
      "stop": 4006.22,
      "target": 3989.653,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-25T00:20:00Z",
      "outcome_time": "2026-06-25T00:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3995.175,
          "impulse_high": 4006.22,
          "fib_entry_level": "50%",
          "entry": 4000.6975,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3996.315,
              "high": 4003.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4002.023, planned_rr=3.0, touch=2026-06-25T00:20:00Z, outcome=tp_first",
      "entry": 4002.023,
      "stop": 4006.22,
      "target": 3989.432,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-25T00:20:00Z",
      "outcome_time": "2026-06-25T00:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3995.175,
          "impulse_high": 4006.22,
          "fib_entry_level": "62%",
          "entry": 4002.0229,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3996.315,
              "high": 4003.895,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3990.721, planned_rr=3.0, touch=2026-06-25T00:50:00Z, outcome=sl_first",
      "entry": 3990.721,
      "stop": 3996.315,
      "target": 3973.941,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T00:50:00Z",
      "outcome_time": "2026-06-25T00:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3981.595,
          "impulse_high": 3996.315,
          "fib_entry_level": "62%",
          "entry": 3990.7214,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3988.881, planned_rr=3.0, touch=2026-06-25T02:20:00Z, outcome=tp_first",
      "entry": 3988.881,
      "stop": 3996.08,
      "target": 3967.284,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-25T02:20:00Z",
      "outcome_time": "2026-06-25T03:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3977.135,
          "impulse_high": 3996.08,
          "fib_entry_level": "62%",
          "entry": 3988.8809,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3974.444, planned_rr=3.0, touch=2026-06-25T02:05:00Z, outcome=sl_first",
      "entry": 3974.444,
      "stop": 3981.78,
      "target": 3952.436,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T02:05:00Z",
      "outcome_time": "2026-06-25T02:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3962.475,
          "impulse_high": 3981.78,
          "fib_entry_level": "62%",
          "entry": 3974.4441,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3980.611, planned_rr=3.0, touch=2026-06-25T03:05:00Z, outcome=sl_first",
      "entry": 3980.611,
      "stop": 3989.36,
      "target": 3954.362,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T03:05:00Z",
      "outcome_time": "2026-06-25T03:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3966.335,
          "impulse_high": 3989.36,
          "fib_entry_level": "62%",
          "entry": 3980.6105000000002,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3981.635, planned_rr=2.0, touch=2026-06-25T07:35:00Z, outcome=sl_first",
      "entry": 3981.635,
      "stop": 3989.43,
      "target": 3966.045,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T07:35:00Z",
      "outcome_time": "2026-06-25T08:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3973.84,
          "impulse_high": 3989.43,
          "fib_entry_level": "50%",
          "entry": 3981.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 3980.535,
              "high": 3991.94,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3983.506, planned_rr=3.0, touch=2026-06-25T07:35:00Z, outcome=sl_first",
      "entry": 3983.506,
      "stop": 3989.43,
      "target": 3965.733,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T07:35:00Z",
      "outcome_time": "2026-06-25T08:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3973.84,
          "impulse_high": 3989.43,
          "fib_entry_level": "62%",
          "entry": 3983.5058,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 3980.535,
              "high": 3991.94,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3995.55, planned_rr=3.0, touch=2026-06-25T09:00:00Z, outcome=tp_first",
      "entry": 3995.55,
      "stop": 3999.825,
      "target": 3982.725,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-25T09:00:00Z",
      "outcome_time": "2026-06-25T10:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3988.575,
          "impulse_high": 3999.825,
          "fib_entry_level": "62%",
          "entry": 3995.5499999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4021.963, planned_rr=3.0, touch=2026-06-25T13:35:00Z, outcome=tp_first",
      "entry": 4021.963,
      "stop": 4028.765,
      "target": 4001.557,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-25T13:35:00Z",
      "outcome_time": "2026-06-25T13:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4010.865,
          "impulse_high": 4028.765,
          "fib_entry_level": "62%",
          "entry": 4021.9629999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4039.291, planned_rr=3.0, touch=2026-06-25T19:05:00Z, outcome=tp_first",
      "entry": 4039.291,
      "stop": 4044.14,
      "target": 4024.745,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-25T19:05:00Z",
      "outcome_time": "2026-06-25T19:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4031.38,
          "impulse_high": 4044.14,
          "fib_entry_level": "62%",
          "entry": 4039.2912,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T18-30-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-25T18:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4035.262, planned_rr=2.0, touch=2026-06-25T18:35:00Z, outcome=tp_first",
      "entry": 4035.262,
      "stop": 4044.14,
      "target": 4017.507,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-25T18:35:00Z",
      "outcome_time": "2026-06-25T23:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T18-30-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4044.14,
          "entry": 4035.2625,
          "stop": 4044.14,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4033.49,
              "high": 4037.035,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T18-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-25T18:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4032.79, planned_rr=2.0, touch=2026-06-25T18:40:00Z, outcome=tp_first",
      "entry": 4032.79,
      "stop": 4044.14,
      "target": 4010.09,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-25T18:40:00Z",
      "outcome_time": "2026-06-26T02:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T18-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4044.14,
          "entry": 4032.79,
          "stop": 4044.14,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4027.135, planned_rr=3.0, touch=2026-06-25T22:05:00Z, outcome=sl_first",
      "entry": 4027.135,
      "stop": 4030.205,
      "target": 4017.923,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-25T22:05:00Z",
      "outcome_time": "2026-06-25T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4022.125,
          "impulse_high": 4030.205,
          "fib_entry_level": "62%",
          "entry": 4027.1346,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-25T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-25T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4019.985, planned_rr=3.0, touch=2026-06-26T00:10:00Z, outcome=sl_first",
      "entry": 4019.985,
      "stop": 4024.38,
      "target": 4006.801,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T00:10:00Z",
      "outcome_time": "2026-06-26T00:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-25T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-25",
        "timestamp": "2026-06-25T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4012.815,
          "impulse_high": 4024.38,
          "fib_entry_level": "62%",
          "entry": 4019.9853000000003,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4044.14,
            "PDL": 3962.475,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4010.51, planned_rr=2.0, touch=2026-06-26T02:20:00Z, outcome=tp_first",
      "entry": 4010.51,
      "stop": 4016.815,
      "target": 3997.9,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-26T02:20:00Z",
      "outcome_time": "2026-06-26T02:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4004.205,
          "impulse_high": 4016.815,
          "fib_entry_level": "50%",
          "entry": 4010.51,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4009.605,
              "high": 4013.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T02:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4012.023, planned_rr=3.0, touch=2026-06-26T04:15:00Z, outcome=sl_first",
      "entry": 4012.023,
      "stop": 4016.815,
      "target": 3997.648,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T04:15:00Z",
      "outcome_time": "2026-06-26T05:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T02-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T02:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4004.205,
          "impulse_high": 4016.815,
          "fib_entry_level": "62%",
          "entry": 4012.0232,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4009.605,
              "high": 4013.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4000.37, planned_rr=2.0, touch=2026-06-26T02:35:00Z, outcome=sl_first",
      "entry": 4000.37,
      "stop": 4009.605,
      "target": 3981.9,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T02:35:00Z",
      "outcome_time": "2026-06-26T04:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3991.135,
          "impulse_high": 4009.605,
          "fib_entry_level": "50%",
          "entry": 4000.37,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3995.415,
              "high": 4004.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4002.586, planned_rr=3.0, touch=2026-06-26T02:35:00Z, outcome=sl_first",
      "entry": 4002.586,
      "stop": 4009.605,
      "target": 3981.531,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T02:35:00Z",
      "outcome_time": "2026-06-26T04:10:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3991.135,
          "impulse_high": 4009.605,
          "fib_entry_level": "62%",
          "entry": 4002.5864,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3995.415,
              "high": 4004.205,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4052.416, planned_rr=3.0, touch=2026-06-26T11:05:00Z, outcome=sl_first",
      "entry": 4052.416,
      "stop": 4055.61,
      "target": 4042.834,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T11:05:00Z",
      "outcome_time": "2026-06-26T11:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T11-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4047.205,
          "impulse_high": 4055.61,
          "fib_entry_level": "62%",
          "entry": 4052.4161,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4044.147, planned_rr=3.0, touch=2026-06-26T12:35:00Z, outcome=sl_first",
      "entry": 4044.147,
      "stop": 4049.18,
      "target": 4029.048,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T12:35:00Z",
      "outcome_time": "2026-06-26T12:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4035.935,
          "impulse_high": 4049.18,
          "fib_entry_level": "62%",
          "entry": 4044.1468999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-26T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4057.519, planned_rr=3.0, touch=2026-06-26T13:20:00Z, outcome=sl_first",
      "entry": 4057.519,
      "stop": 4066.13,
      "target": 4031.687,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T13:20:00Z",
      "outcome_time": "2026-06-26T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4043.47,
          "impulse_high": 4066.13,
          "fib_entry_level": "62%",
          "entry": 4057.5192,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T13-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-26T13:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4050.665, planned_rr=2.0, touch=2026-06-26T13:05:00Z, outcome=sl_first",
      "entry": 4050.665,
      "stop": 4066.13,
      "target": 4019.735,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-26T13:05:00Z",
      "outcome_time": "2026-06-26T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T13-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4066.13,
          "entry": 4050.665,
          "stop": 4066.13,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-26T20-45-00Z_short_breaker_continuation",
      "timestamp": "2026-06-26T20:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4071.065, planned_rr=2.0, touch=2026-06-28T22:10:00Z, outcome=tp_first",
      "entry": 4071.065,
      "stop": 4091.205,
      "target": 4030.785,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-28T22:10:00Z",
      "outcome_time": "2026-06-29T09:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-26T20-45-00Z_short_breaker_continuation",
        "date": "2026-06-26",
        "timestamp": "2026-06-26T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4091.205,
          "entry": 4071.0649999999996,
          "stop": 4091.205,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4070.24,
              "high": 4071.89,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4065.54,
              "high": 4069.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-28T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-28T22:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4063.983, planned_rr=3.0, touch=2026-06-28T22:40:00Z, outcome=sl_first",
      "entry": 4063.983,
      "stop": 4070.485,
      "target": 4044.478,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-28T22:40:00Z",
      "outcome_time": "2026-06-28T23:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-28T22-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-28",
        "timestamp": "2026-06-28T22:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4053.375,
          "impulse_high": 4070.485,
          "fib_entry_level": "62%",
          "entry": 4063.9832,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4062.9,
              "high": 4065.355,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-28T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-28T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4061.902, planned_rr=3.0, touch=2026-06-28T23:35:00Z, outcome=sl_first",
      "entry": 4061.902,
      "stop": 4065.7,
      "target": 4050.508,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-28T23:35:00Z",
      "outcome_time": "2026-06-28T23:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-28T23-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-28",
        "timestamp": "2026-06-28T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4055.705,
          "impulse_high": 4065.7,
          "fib_entry_level": "62%",
          "entry": 4061.9019,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4095.985,
            "PDL": 3982.95,
            "PWH": 4221.37,
            "PWL": 3959.08
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4056.88, planned_rr=3.0, touch=2026-06-29T00:20:00Z, outcome=sl_first",
      "entry": 4056.88,
      "stop": 4062.23,
      "target": 4040.828,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T00:20:00Z",
      "outcome_time": "2026-06-29T00:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4048.15,
          "impulse_high": 4062.23,
          "fib_entry_level": "62%",
          "entry": 4056.8796,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4064.26, planned_rr=2.0, touch=2026-06-29T01:05:00Z, outcome=sl_first",
      "entry": 4064.26,
      "stop": 4074.75,
      "target": 4043.28,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T01:05:00Z",
      "outcome_time": "2026-06-29T01:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4053.77,
          "impulse_high": 4074.75,
          "fib_entry_level": "50%",
          "entry": 4064.26,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4062.9,
              "high": 4065.355,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4066.778, planned_rr=3.0, touch=2026-06-29T01:05:00Z, outcome=sl_first",
      "entry": 4066.778,
      "stop": 4074.75,
      "target": 4042.86,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T01:05:00Z",
      "outcome_time": "2026-06-29T01:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4053.77,
          "impulse_high": 4074.75,
          "fib_entry_level": "62%",
          "entry": 4066.7776,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4065.54,
              "high": 4069.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T01-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-06-29T01:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4067.61, planned_rr=2.0, touch=2026-06-29T01:05:00Z, outcome=sl_first",
      "entry": 4067.61,
      "stop": 4074.75,
      "target": 4053.33,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T01:05:00Z",
      "outcome_time": "2026-06-29T01:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T01-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4074.75,
          "entry": 4067.6099999999997,
          "stop": 4074.75,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4065.54,
              "high": 4069.68,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4062.9,
              "high": 4065.355,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T01-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-06-29T01:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4055.115, planned_rr=2.0, touch=2026-06-29T01:10:00Z, outcome=sl_first",
      "entry": 4055.115,
      "stop": 4074.75,
      "target": 4015.845,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T01:10:00Z",
      "outcome_time": "2026-06-29T03:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T01-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4074.75,
          "entry": 4055.115,
          "stop": 4074.75,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4052.291, planned_rr=3.0, touch=2026-06-29T08:50:00Z, outcome=tp_first",
      "entry": 4052.291,
      "stop": 4057.45,
      "target": 4036.816,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-29T08:50:00Z",
      "outcome_time": "2026-06-29T09:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4043.875,
          "impulse_high": 4057.45,
          "fib_entry_level": "62%",
          "entry": 4052.2915,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T09:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4036.725, planned_rr=3.0, touch=2026-06-29T09:50:00Z, outcome=sl_first",
      "entry": 4036.725,
      "stop": 4044.255,
      "target": 4014.136,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T09:50:00Z",
      "outcome_time": "2026-06-29T12:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T09-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T09:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4024.44,
          "impulse_high": 4044.255,
          "fib_entry_level": "62%",
          "entry": 4036.7253,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4043.855, planned_rr=2.0, touch=2026-06-29T12:20:00Z, outcome=sl_first",
      "entry": 4043.855,
      "stop": 4049.945,
      "target": 4031.675,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T12:20:00Z",
      "outcome_time": "2026-06-29T13:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4037.765,
          "impulse_high": 4049.945,
          "fib_entry_level": "50%",
          "entry": 4043.855,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4034.08,
              "high": 4044.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4045.317, planned_rr=3.0, touch=2026-06-29T12:20:00Z, outcome=sl_first",
      "entry": 4045.317,
      "stop": 4049.945,
      "target": 4031.431,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T12:20:00Z",
      "outcome_time": "2026-06-29T13:00:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4037.765,
          "impulse_high": 4049.945,
          "fib_entry_level": "62%",
          "entry": 4045.3166,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4043.865, planned_rr=2.0, touch=2026-06-29T13:20:00Z, outcome=tp_first",
      "entry": 4043.865,
      "stop": 4049.86,
      "target": 4031.875,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-29T13:20:00Z",
      "outcome_time": "2026-06-29T13:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4037.87,
          "impulse_high": 4049.86,
          "fib_entry_level": "50%",
          "entry": 4043.865,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4034.08,
              "high": 4044.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4025.166, planned_rr=3.0, touch=2026-06-29T14:05:00Z, outcome=tp_first",
      "entry": 4025.166,
      "stop": 4035.62,
      "target": 3993.805,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-29T14:05:00Z",
      "outcome_time": "2026-06-30T00:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4008.11,
          "impulse_high": 4035.62,
          "fib_entry_level": "62%",
          "entry": 4025.1662,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4013.307, planned_rr=2.0, touch=2026-06-29T22:35:00Z, outcome=sl_first",
      "entry": 4013.307,
      "stop": 4016.04,
      "target": 4007.842,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T22:35:00Z",
      "outcome_time": "2026-06-29T22:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4010.575,
          "impulse_high": 4016.04,
          "fib_entry_level": "50%",
          "entry": 4013.3075,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4011.75,
              "high": 4013.675,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-29T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-29T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4013.963, planned_rr=3.0, touch=2026-06-29T22:35:00Z, outcome=sl_first",
      "entry": 4013.963,
      "stop": 4016.04,
      "target": 4007.733,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-29T22:35:00Z",
      "outcome_time": "2026-06-29T22:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-29T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-29",
        "timestamp": "2026-06-29T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4010.575,
          "impulse_high": 4016.04,
          "fib_entry_level": "62%",
          "entry": 4013.9633,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4083.82,
            "PDL": 4000.325,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3970.251, planned_rr=3.0, touch=2026-06-30T01:05:00Z, outcome=sl_first",
      "entry": 3970.251,
      "stop": 3987.505,
      "target": 3918.489,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T01:05:00Z",
      "outcome_time": "2026-06-30T04:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3942.1,
          "impulse_high": 3987.505,
          "fib_entry_level": "62%",
          "entry": 3970.2511,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3974.606, planned_rr=3.0, touch=2026-06-30T01:35:00Z, outcome=tp_first",
      "entry": 3974.606,
      "stop": 3979.645,
      "target": 3959.49,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T01:35:00Z",
      "outcome_time": "2026-06-30T02:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3966.385,
          "impulse_high": 3979.645,
          "fib_entry_level": "62%",
          "entry": 3974.6062,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3965.471, planned_rr=3.0, touch=2026-06-30T02:05:00Z, outcome=sl_first",
      "entry": 3965.471,
      "stop": 3973.645,
      "target": 3940.95,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T02:05:00Z",
      "outcome_time": "2026-06-30T04:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3952.135,
          "impulse_high": 3973.645,
          "fib_entry_level": "62%",
          "entry": 3965.4712,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4022.672, planned_rr=2.0, touch=2026-06-30T06:35:00Z, outcome=sl_first",
      "entry": 4022.672,
      "stop": 4011.02,
      "target": 4045.977,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T06:35:00Z",
      "outcome_time": "2026-06-30T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4011.02,
          "impulse_high": 4034.325,
          "fib_entry_level": "50%",
          "entry": 4022.6724999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4013.48,
              "high": 4023.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4019.876, planned_rr=3.0, touch=2026-06-30T08:35:00Z, outcome=sl_first",
      "entry": 4019.876,
      "stop": 4011.02,
      "target": 4046.444,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T08:35:00Z",
      "outcome_time": "2026-06-30T12:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4011.02,
          "impulse_high": 4034.325,
          "fib_entry_level": "62%",
          "entry": 4019.8759,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4013.48,
              "high": 4023.955,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4031.326, planned_rr=3.0, touch=2026-06-30T12:05:00Z, outcome=tp_first",
      "entry": 4031.326,
      "stop": 4034.56,
      "target": 4021.625,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T12:05:00Z",
      "outcome_time": "2026-06-30T12:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4026.05,
          "impulse_high": 4034.56,
          "fib_entry_level": "62%",
          "entry": 4031.3262,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4021.838, planned_rr=2.0, touch=2026-06-30T12:20:00Z, outcome=sl_first",
      "entry": 4021.838,
      "stop": 4028.76,
      "target": 4007.992,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T12:20:00Z",
      "outcome_time": "2026-06-30T13:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4014.915,
          "impulse_high": 4028.76,
          "fib_entry_level": "50%",
          "entry": 4021.8375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4012.83,
              "high": 4022.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4023.499, planned_rr=3.0, touch=2026-06-30T12:20:00Z, outcome=sl_first",
      "entry": 4023.499,
      "stop": 4028.76,
      "target": 4007.716,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T12:20:00Z",
      "outcome_time": "2026-06-30T13:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4014.915,
          "impulse_high": 4028.76,
          "fib_entry_level": "62%",
          "entry": 4023.4989,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4022.01,
              "high": 4026.05,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4013.67, planned_rr=2.0, touch=2026-06-30T12:50:00Z, outcome=sl_first",
      "entry": 4013.67,
      "stop": 4018.6,
      "target": 4003.81,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T12:50:00Z",
      "outcome_time": "2026-06-30T13:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4008.74,
          "impulse_high": 4018.6,
          "fib_entry_level": "50%",
          "entry": 4013.67,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4012.83,
              "high": 4022.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4014.853, planned_rr=3.0, touch=2026-06-30T12:50:00Z, outcome=sl_first",
      "entry": 4014.853,
      "stop": 4018.6,
      "target": 4003.613,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T12:50:00Z",
      "outcome_time": "2026-06-30T13:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4008.74,
          "impulse_high": 4018.6,
          "fib_entry_level": "62%",
          "entry": 4014.8532,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4012.83,
              "high": 4022.01,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T12-45-00Z_long_breaker_continuation",
      "timestamp": "2026-06-30T12:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4020.2, planned_rr=2.0, touch=2026-06-30T13:05:00Z, outcome=tp_first",
      "entry": 4020.2,
      "stop": 4008.74,
      "target": 4043.12,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-30T13:05:00Z",
      "outcome_time": "2026-06-30T14:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T12-45-00Z_long_breaker_continuation",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 4008.74,
          "entry": 4020.2,
          "stop": 4008.74,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4018.835,
              "high": 4021.565,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4029.85,
              "high": 4034.325,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4015.719, planned_rr=3.0, touch=2026-06-30T13:05:00Z, outcome=tp_first",
      "entry": 4015.719,
      "stop": 4009.455,
      "target": 4034.512,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T13:05:00Z",
      "outcome_time": "2026-06-30T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T13-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4009.455,
          "impulse_high": 4025.94,
          "fib_entry_level": "62%",
          "entry": 4015.7192999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4037.102, planned_rr=2.0, touch=2026-06-30T14:05:00Z, outcome=tp_first",
      "entry": 4037.102,
      "stop": 4025.425,
      "target": 4060.457,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-30T14:05:00Z",
      "outcome_time": "2026-06-30T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4025.425,
          "impulse_high": 4048.78,
          "fib_entry_level": "50%",
          "entry": 4037.1025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4032.74,
              "high": 4043.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4034.3, planned_rr=3.0, touch=2026-06-30T14:05:00Z, outcome=tp_first",
      "entry": 4034.3,
      "stop": 4025.425,
      "target": 4060.925,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T14:05:00Z",
      "outcome_time": "2026-06-30T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T14-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4025.425,
          "impulse_high": 4048.78,
          "fib_entry_level": "62%",
          "entry": 4034.2999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4029.85,
              "high": 4034.325,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4032.74,
              "high": 4043.185,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4050.897, planned_rr=3.0, touch=2026-06-30T14:20:00Z, outcome=sl_first",
      "entry": 4050.897,
      "stop": 4043.185,
      "target": 4074.033,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T14:20:00Z",
      "outcome_time": "2026-06-30T14:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T14-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4043.185,
          "impulse_high": 4063.48,
          "fib_entry_level": "62%",
          "entry": 4050.8971,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4018.705, planned_rr=2.0, touch=2026-06-30T19:50:00Z, outcome=tp_first",
      "entry": 4018.705,
      "stop": 4022.68,
      "target": 4010.755,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-30T19:50:00Z",
      "outcome_time": "2026-06-30T20:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4014.73,
          "impulse_high": 4022.68,
          "fib_entry_level": "50%",
          "entry": 4018.705,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4013.95,
              "high": 4020.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4019.659, planned_rr=3.0, touch=2026-06-30T19:50:00Z, outcome=tp_first",
      "entry": 4019.659,
      "stop": 4022.68,
      "target": 4010.596,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T19:50:00Z",
      "outcome_time": "2026-06-30T20:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4014.73,
          "impulse_high": 4022.68,
          "fib_entry_level": "62%",
          "entry": 4019.659,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4013.95,
              "high": 4020.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T20:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4016.601, planned_rr=3.0, touch=2026-06-30T20:20:00Z, outcome=sl_first",
      "entry": 4016.601,
      "stop": 4013.95,
      "target": 4024.552,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-06-30T20:20:00Z",
      "outcome_time": "2026-06-30T20:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T20-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4013.95,
          "impulse_high": 4020.925,
          "fib_entry_level": "62%",
          "entry": 4016.6005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T20-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-06-30T20:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4028.71, planned_rr=2.0, touch=2026-07-01T11:25:00Z, outcome=sl_first",
      "entry": 4028.71,
      "stop": 4013.95,
      "target": 4058.23,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T11:25:00Z",
      "outcome_time": "2026-07-01T13:05:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T20-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4013.95,
          "entry": 4028.71,
          "stop": 4013.95,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4028.245,
              "high": 4029.175,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4016.802, planned_rr=2.0, touch=2026-06-30T20:20:00Z, outcome=tp_first",
      "entry": 4016.802,
      "stop": 4021.265,
      "target": 4007.877,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-30T20:20:00Z",
      "outcome_time": "2026-06-30T20:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4012.34,
          "impulse_high": 4021.265,
          "fib_entry_level": "50%",
          "entry": 4016.8025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4013.95,
              "high": 4020.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T20:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4017.874, planned_rr=3.0, touch=2026-06-30T20:20:00Z, outcome=tp_first",
      "entry": 4017.874,
      "stop": 4021.265,
      "target": 4007.699,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T20:20:00Z",
      "outcome_time": "2026-06-30T20:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T20-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T20:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4012.34,
          "impulse_high": 4021.265,
          "fib_entry_level": "62%",
          "entry": 4017.8735,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4013.95,
              "high": 4020.925,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4007.923, planned_rr=2.0, touch=2026-06-30T23:50:00Z, outcome=tp_first",
      "entry": 4007.923,
      "stop": 4010.34,
      "target": 4003.088,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-06-30T23:50:00Z",
      "outcome_time": "2026-07-01T00:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4005.505,
          "impulse_high": 4010.34,
          "fib_entry_level": "50%",
          "entry": 4007.9225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4005.66,
              "high": 4009.915,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-06-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-06-30T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4008.503, planned_rr=3.0, touch=2026-06-30T23:50:00Z, outcome=tp_first",
      "entry": 4008.503,
      "stop": 4010.34,
      "target": 4002.991,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-06-30T23:50:00Z",
      "outcome_time": "2026-07-01T00:15:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-06-30T23-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-06-30",
        "timestamp": "2026-06-30T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4005.505,
          "impulse_high": 4010.34,
          "fib_entry_level": "62%",
          "entry": 4008.5027,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4005.66,
              "high": 4009.915,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4063.48,
            "PDL": 3942.1,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3983.575, planned_rr=3.0, touch=2026-07-01T02:30:00Z, outcome=tp_first",
      "entry": 3983.575,
      "stop": 3988.77,
      "target": 3967.992,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-01T02:30:00Z",
      "outcome_time": "2026-07-01T06:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3975.1,
          "impulse_high": 3988.77,
          "fib_entry_level": "62%",
          "entry": 3983.5754,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3970.557, planned_rr=2.0, touch=2026-07-01T06:05:00Z, outcome=sl_first",
      "entry": 3970.557,
      "stop": 3977.605,
      "target": 3956.462,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T06:05:00Z",
      "outcome_time": "2026-07-01T07:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3963.51,
          "impulse_high": 3977.605,
          "fib_entry_level": "50%",
          "entry": 3970.5575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3969.975,
              "high": 3973.715,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 3969.15,
              "high": 3973.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3972.249, planned_rr=3.0, touch=2026-07-01T06:05:00Z, outcome=sl_first",
      "entry": 3972.249,
      "stop": 3977.605,
      "target": 3956.181,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T06:05:00Z",
      "outcome_time": "2026-07-01T07:55:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3963.51,
          "impulse_high": 3977.605,
          "fib_entry_level": "62%",
          "entry": 3972.2489,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3969.975,
              "high": 3973.715,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 3969.15,
              "high": 3973.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3968.786, planned_rr=3.0, touch=2026-07-01T07:15:00Z, outcome=sl_first",
      "entry": 3968.786,
      "stop": 3973.905,
      "target": 3953.431,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T07:15:00Z",
      "outcome_time": "2026-07-01T07:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3960.435,
          "impulse_high": 3973.905,
          "fib_entry_level": "62%",
          "entry": 3968.7864,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4028.575, planned_rr=3.0, touch=2026-07-01T12:20:00Z, outcome=sl_first",
      "entry": 4028.575,
      "stop": 4034.045,
      "target": 4012.165,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T12:20:00Z",
      "outcome_time": "2026-07-01T13:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T12-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4019.65,
          "impulse_high": 4034.045,
          "fib_entry_level": "62%",
          "entry": 4028.5749,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4044.462, planned_rr=2.0, touch=2026-07-01T19:50:00Z, outcome=sl_first",
      "entry": 4044.462,
      "stop": 4054.345,
      "target": 4024.697,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-01T19:50:00Z",
      "outcome_time": "2026-07-02T01:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T19-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4034.58,
          "impulse_high": 4054.345,
          "fib_entry_level": "50%",
          "entry": 4044.4624999999996,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4039.83,
              "high": 4053.21,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4041.422, planned_rr=2.0, touch=2026-07-01T23:05:00Z, outcome=tp_first",
      "entry": 4041.422,
      "stop": 4045.185,
      "target": 4033.897,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-01T23:05:00Z",
      "outcome_time": "2026-07-01T23:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4037.66,
          "impulse_high": 4045.185,
          "fib_entry_level": "50%",
          "entry": 4041.4224999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4039.83,
              "high": 4053.21,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-01T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4042.325, planned_rr=3.0, touch=2026-07-01T23:05:00Z, outcome=tp_first",
      "entry": 4042.325,
      "stop": 4045.185,
      "target": 4033.747,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-01T23:05:00Z",
      "outcome_time": "2026-07-01T23:45:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-01T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4037.66,
          "impulse_high": 4045.185,
          "fib_entry_level": "62%",
          "entry": 4042.3255,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4039.83,
              "high": 4053.21,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-01T23-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-07-01T23:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "decision": "rejected",
      "reason": "level error: invalid risk geometry",
      "issues": [
        "level_error"
      ],
      "candidate": {
        "id": "candidate_v3_2026-07-01T23-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-07-01",
        "timestamp": "2026-07-01T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_high": 4045.185,
          "entry": 4060.7574999999997,
          "stop": 4045.185,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4059.825,
              "high": 4061.69,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4054.345,
              "high": 4056.725,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4115.81,
            "PDL": 3960.275,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4038.588, planned_rr=2.0, touch=2026-07-02T00:05:00Z, outcome=tp_first",
      "entry": 4038.588,
      "stop": 4030.895,
      "target": 4053.973,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-02T00:05:00Z",
      "outcome_time": "2026-07-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4030.895,
          "impulse_high": 4046.28,
          "fib_entry_level": "50%",
          "entry": 4038.5875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4037.12,
              "high": 4040.495,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4038.14,
              "high": 4046.825,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-00-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-02T00:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4038.807, planned_rr=2.0, touch=2026-07-02T00:05:00Z, outcome=tp_first",
      "entry": 4038.807,
      "stop": 4030.895,
      "target": 4054.632,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-02T00:05:00Z",
      "outcome_time": "2026-07-02T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-00-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4030.895,
          "entry": 4038.8075,
          "stop": 4030.895,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4037.12,
              "high": 4040.495,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4046.825,
              "high": 4050.705,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-02T00:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4044.915, planned_rr=2.0, touch=2026-07-02T00:10:00Z, outcome=tp_first",
      "entry": 4044.915,
      "stop": 4030.895,
      "target": 4072.955,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-02T00:10:00Z",
      "outcome_time": "2026-07-02T03:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4030.895,
          "entry": 4044.915,
          "stop": 4030.895,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4043.525, planned_rr=3.0, touch=2026-07-02T00:35:00Z, outcome=sl_first",
      "entry": 4043.525,
      "stop": 4046.825,
      "target": 4033.624,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T00:35:00Z",
      "outcome_time": "2026-07-02T00:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4038.14,
          "impulse_high": 4046.825,
          "fib_entry_level": "62%",
          "entry": 4043.5247,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4046.0, planned_rr=2.0, touch=2026-07-02T01:45:00Z, outcome=tp_first",
      "entry": 4046.0,
      "stop": 4039.205,
      "target": 4059.59,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-02T01:45:00Z",
      "outcome_time": "2026-07-02T02:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4039.205,
          "impulse_high": 4052.795,
          "fib_entry_level": "50%",
          "entry": 4046.0,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4038.14,
              "high": 4046.825,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4044.369, planned_rr=3.0, touch=2026-07-02T02:00:00Z, outcome=tp_first",
      "entry": 4044.369,
      "stop": 4039.205,
      "target": 4059.862,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-02T02:00:00Z",
      "outcome_time": "2026-07-02T02:55:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4039.205,
          "impulse_high": 4052.795,
          "fib_entry_level": "62%",
          "entry": 4044.3692,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4038.14,
              "high": 4046.825,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4057.555, planned_rr=3.0, touch=2026-07-02T01:20:00Z, outcome=sl_first",
      "entry": 4057.555,
      "stop": 4050.705,
      "target": 4078.103,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T01:20:00Z",
      "outcome_time": "2026-07-02T01:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4050.705,
          "impulse_high": 4068.73,
          "fib_entry_level": "62%",
          "entry": 4057.5545,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4060.048, planned_rr=3.0, touch=2026-07-02T01:20:00Z, outcome=tp_first",
      "entry": 4060.048,
      "stop": 4065.98,
      "target": 4042.253,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-02T01:20:00Z",
      "outcome_time": "2026-07-02T02:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4050.37,
          "impulse_high": 4065.98,
          "fib_entry_level": "62%",
          "entry": 4060.0482,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T03:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4061.262, planned_rr=3.0, touch=2026-07-02T03:20:00Z, outcome=tp_first",
      "entry": 4061.262,
      "stop": 4057.555,
      "target": 4072.383,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-02T03:20:00Z",
      "outcome_time": "2026-07-02T03:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T03-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T03:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4057.555,
          "impulse_high": 4067.31,
          "fib_entry_level": "62%",
          "entry": 4061.2619,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4059.915,
              "high": 4061.875,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4072.774, planned_rr=3.0, touch=2026-07-02T06:35:00Z, outcome=sl_first",
      "entry": 4072.774,
      "stop": 4076.83,
      "target": 4060.604,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T06:35:00Z",
      "outcome_time": "2026-07-02T08:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T06-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4066.155,
          "impulse_high": 4076.83,
          "fib_entry_level": "62%",
          "entry": 4072.7735000000002,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4071.586, planned_rr=3.0, touch=2026-07-02T07:05:00Z, outcome=sl_first",
      "entry": 4071.586,
      "stop": 4074.29,
      "target": 4063.475,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T07:05:00Z",
      "outcome_time": "2026-07-02T07:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4067.175,
          "impulse_high": 4074.29,
          "fib_entry_level": "62%",
          "entry": 4071.5863,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4066.567, planned_rr=3.0, touch=2026-07-02T07:35:00Z, outcome=sl_first",
      "entry": 4066.567,
      "stop": 4061.04,
      "target": 4083.148,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T07:35:00Z",
      "outcome_time": "2026-07-02T11:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4061.04,
          "impulse_high": 4075.585,
          "fib_entry_level": "62%",
          "entry": 4066.5671,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T07:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4070.723, planned_rr=3.0, touch=2026-07-02T08:05:00Z, outcome=sl_first",
      "entry": 4070.723,
      "stop": 4075.025,
      "target": 4057.819,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T08:05:00Z",
      "outcome_time": "2026-07-02T08:20:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T07-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T07:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4063.705,
          "impulse_high": 4075.025,
          "fib_entry_level": "62%",
          "entry": 4070.7234,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4125.845, planned_rr=3.0, touch=2026-07-02T12:50:00Z, outcome=sl_first",
      "entry": 4125.845,
      "stop": 4134.245,
      "target": 4100.645,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T12:50:00Z",
      "outcome_time": "2026-07-02T13:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4112.14,
          "impulse_high": 4134.245,
          "fib_entry_level": "62%",
          "entry": 4125.8451000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4118.981, planned_rr=3.0, touch=2026-07-02T13:20:00Z, outcome=sl_first",
      "entry": 4118.981,
      "stop": 4124.825,
      "target": 4101.447,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T13:20:00Z",
      "outcome_time": "2026-07-02T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4109.445,
          "impulse_high": 4124.825,
          "fib_entry_level": "62%",
          "entry": 4118.9806,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4120.908, planned_rr=3.0, touch=2026-07-02T14:25:00Z, outcome=sl_first",
      "entry": 4120.908,
      "stop": 4110.125,
      "target": 4153.255,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T14:25:00Z",
      "outcome_time": "2026-07-02T16:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4110.125,
          "impulse_high": 4138.5,
          "fib_entry_level": "62%",
          "entry": 4120.9075,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4114.863, planned_rr=2.0, touch=2026-07-02T18:05:00Z, outcome=tp_first",
      "entry": 4114.863,
      "stop": 4105.895,
      "target": 4132.797,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-02T18:05:00Z",
      "outcome_time": "2026-07-02T23:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4105.895,
          "impulse_high": 4123.83,
          "fib_entry_level": "50%",
          "entry": 4114.8625,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4110.41,
              "high": 4115.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4112.71, planned_rr=3.0, touch=2026-07-02T19:15:00Z, outcome=tp_first",
      "entry": 4112.71,
      "stop": 4105.895,
      "target": 4133.156,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-02T19:15:00Z",
      "outcome_time": "2026-07-02T23:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4105.895,
          "impulse_high": 4123.83,
          "fib_entry_level": "62%",
          "entry": 4112.710300000001,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4110.41,
              "high": 4115.58,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4118.913, planned_rr=2.0, touch=2026-07-02T19:05:00Z, outcome=sl_first",
      "entry": 4118.913,
      "stop": 4124.485,
      "target": 4107.768,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T19:05:00Z",
      "outcome_time": "2026-07-02T20:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4113.34,
          "impulse_high": 4124.485,
          "fib_entry_level": "50%",
          "entry": 4118.9125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4116.765,
              "high": 4121.99,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4115.08,
              "high": 4119.88,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T19:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4120.25, planned_rr=3.0, touch=2026-07-02T19:50:00Z, outcome=sl_first",
      "entry": 4120.25,
      "stop": 4124.485,
      "target": 4107.545,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T19:50:00Z",
      "outcome_time": "2026-07-02T20:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T19-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T19:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4113.34,
          "impulse_high": 4124.485,
          "fib_entry_level": "62%",
          "entry": 4120.2499,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4116.765,
              "high": 4121.99,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-02T19:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4117.126, planned_rr=3.0, touch=2026-07-02T19:50:00Z, outcome=tp_first",
      "entry": 4117.126,
      "stop": 4112.84,
      "target": 4129.986,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-02T19:50:00Z",
      "outcome_time": "2026-07-02T23:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T19-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T19:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4112.84,
          "impulse_high": 4124.12,
          "fib_entry_level": "62%",
          "entry": 4117.1264,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T23-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-02T23:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4124.86, planned_rr=2.0, touch=2026-07-02T23:35:00Z, outcome=sl_first",
      "entry": 4124.86,
      "stop": 4121.47,
      "target": 4131.64,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T23:35:00Z",
      "outcome_time": "2026-07-02T23:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T23-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4121.47,
          "entry": 4124.86,
          "stop": 4121.47,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-02T23-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-02T23:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4124.86, planned_rr=2.0, touch=2026-07-02T23:35:00Z, outcome=sl_first",
      "entry": 4124.86,
      "stop": 4135.08,
      "target": 4104.42,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-02T23:35:00Z",
      "outcome_time": "2026-07-03T00:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-02T23-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-02",
        "timestamp": "2026-07-02T23:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4135.08,
          "entry": 4124.86,
          "stop": 4135.08,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4144.08,
            "PDL": 4030.895,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4181.884, planned_rr=3.0, touch=2026-07-03T01:20:00Z, outcome=sl_first",
      "entry": 4181.884,
      "stop": 4174.075,
      "target": 4205.311,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T01:20:00Z",
      "outcome_time": "2026-07-03T04:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T01-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4174.075,
          "impulse_high": 4194.625,
          "fib_entry_level": "62%",
          "entry": 4181.884,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4168.187, planned_rr=3.0, touch=2026-07-03T06:05:00Z, outcome=sl_first",
      "entry": 4168.187,
      "stop": 4171.875,
      "target": 4157.123,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T06:05:00Z",
      "outcome_time": "2026-07-03T06:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4162.17,
          "impulse_high": 4171.875,
          "fib_entry_level": "62%",
          "entry": 4168.1871,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4167.29,
              "high": 4169.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4176.895, planned_rr=2.0, touch=2026-07-03T07:35:00Z, outcome=tp_first",
      "entry": 4176.895,
      "stop": 4173.835,
      "target": 4183.015,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-03T07:35:00Z",
      "outcome_time": "2026-07-03T08:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4173.835,
          "impulse_high": 4179.955,
          "fib_entry_level": "50%",
          "entry": 4176.895,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4176.161, planned_rr=3.0, touch=2026-07-03T07:55:00Z, outcome=tp_first",
      "entry": 4176.161,
      "stop": 4173.835,
      "target": 4183.137,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-03T07:55:00Z",
      "outcome_time": "2026-07-03T08:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4173.835,
          "impulse_high": 4179.955,
          "fib_entry_level": "62%",
          "entry": 4176.1606,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4180.719, planned_rr=3.0, touch=2026-07-03T08:40:00Z, outcome=sl_first",
      "entry": 4180.719,
      "stop": 4177.535,
      "target": 4190.273,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T08:40:00Z",
      "outcome_time": "2026-07-03T08:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4177.535,
          "impulse_high": 4185.915,
          "fib_entry_level": "62%",
          "entry": 4180.7194,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T09:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4177.084, planned_rr=3.0, touch=2026-07-03T09:20:00Z, outcome=sl_first",
      "entry": 4177.084,
      "stop": 4180.59,
      "target": 4166.568,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T09:20:00Z",
      "outcome_time": "2026-07-03T10:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T09-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T09:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4171.365,
          "impulse_high": 4180.59,
          "fib_entry_level": "62%",
          "entry": 4177.0845,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4175.818, planned_rr=2.0, touch=2026-07-03T10:35:00Z, outcome=tp_first",
      "entry": 4175.818,
      "stop": 4170.865,
      "target": 4185.723,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-03T10:35:00Z",
      "outcome_time": "2026-07-03T11:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4170.865,
          "impulse_high": 4180.77,
          "fib_entry_level": "50%",
          "entry": 4175.8175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4175.155,
              "high": 4178.12,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4174.8,
              "high": 4178.91,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T10:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4174.629, planned_rr=3.0, touch=2026-07-03T12:20:00Z, outcome=sl_first",
      "entry": 4174.629,
      "stop": 4170.865,
      "target": 4185.921,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T12:20:00Z",
      "outcome_time": "2026-07-03T13:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T10-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T10:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4170.865,
          "impulse_high": 4180.77,
          "fib_entry_level": "62%",
          "entry": 4174.6289,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4179.795, planned_rr=2.0, touch=2026-07-03T11:05:00Z, outcome=sl_first",
      "entry": 4179.795,
      "stop": 4175.64,
      "target": 4188.105,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T11:05:00Z",
      "outcome_time": "2026-07-03T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4175.64,
          "impulse_high": 4183.95,
          "fib_entry_level": "50%",
          "entry": 4179.795,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4178.91,
              "high": 4182.63,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4178.798, planned_rr=3.0, touch=2026-07-03T11:05:00Z, outcome=sl_first",
      "entry": 4178.798,
      "stop": 4175.64,
      "target": 4188.271,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T11:05:00Z",
      "outcome_time": "2026-07-03T12:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4175.64,
          "impulse_high": 4183.95,
          "fib_entry_level": "62%",
          "entry": 4178.7978,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4174.865,
              "high": 4181.665,
              "strength": 2
            },
            {
              "type": "bullish_ob",
              "low": 4174.8,
              "high": 4178.91,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T11-45-00Z_short_breaker_continuation",
      "timestamp": "2026-07-03T11:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4174.507, planned_rr=2.0, touch=2026-07-03T12:20:00Z, outcome=sl_first",
      "entry": 4174.507,
      "stop": 4186.46,
      "target": 4150.602,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T12:20:00Z",
      "outcome_time": "2026-07-05T22:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T11-45-00Z_short_breaker_continuation",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4186.46,
          "entry": 4174.5075,
          "stop": 4186.46,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4173.05,
              "high": 4175.965,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4177.765,
              "high": 4178.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T11-45-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-07-03T11:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4174.507, planned_rr=2.0, touch=2026-07-03T12:20:00Z, outcome=sl_first",
      "entry": 4174.507,
      "stop": 4186.46,
      "target": 4150.602,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T12:20:00Z",
      "outcome_time": "2026-07-05T22:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T11-45-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4186.46,
          "entry": 4174.5075,
          "stop": 4186.46,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4173.05,
              "high": 4175.965,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4177.765,
              "high": 4178.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T11-45-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-03T11:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4181.025, planned_rr=2.0, touch=2026-07-03T11:55:00Z, outcome=tp_first",
      "entry": 4181.025,
      "stop": 4186.46,
      "target": 4170.155,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-03T11:55:00Z",
      "outcome_time": "2026-07-03T13:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T11-45-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4186.46,
          "entry": 4181.025,
          "stop": 4186.46,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T13:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4173.794, planned_rr=3.0, touch=2026-07-03T13:05:00Z, outcome=tp_first",
      "entry": 4173.794,
      "stop": 4179.38,
      "target": 4157.036,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-03T13:05:00Z",
      "outcome_time": "2026-07-03T14:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T13-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T13:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4164.68,
          "impulse_high": 4179.38,
          "fib_entry_level": "62%",
          "entry": 4173.794,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4172.395,
              "high": 4177.68,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4168.946, planned_rr=3.0, touch=2026-07-03T13:20:00Z, outcome=sl_first",
      "entry": 4168.946,
      "stop": 4166.795,
      "target": 4175.398,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T13:20:00Z",
      "outcome_time": "2026-07-03T13:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T13-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4166.795,
          "impulse_high": 4172.455,
          "fib_entry_level": "62%",
          "entry": 4168.9458,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4167.51, planned_rr=2.0, touch=2026-07-03T14:50:00Z, outcome=sl_first",
      "entry": 4167.51,
      "stop": 4163.725,
      "target": 4175.08,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T14:50:00Z",
      "outcome_time": "2026-07-03T16:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4163.725,
          "impulse_high": 4171.295,
          "fib_entry_level": "50%",
          "entry": 4167.51,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4167.475,
              "high": 4168.755,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T14:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4166.602, planned_rr=3.0, touch=2026-07-03T15:30:00Z, outcome=sl_first",
      "entry": 4166.602,
      "stop": 4163.725,
      "target": 4175.231,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-03T15:30:00Z",
      "outcome_time": "2026-07-03T16:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T14-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T14:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4163.725,
          "impulse_high": 4171.295,
          "fib_entry_level": "62%",
          "entry": 4166.6016,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4173.292, planned_rr=2.0, touch=2026-07-03T16:50:00Z, outcome=tp_first",
      "entry": 4173.292,
      "stop": 4170.005,
      "target": 4179.867,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-03T16:50:00Z",
      "outcome_time": "2026-07-05T22:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4170.005,
          "impulse_high": 4176.58,
          "fib_entry_level": "50%",
          "entry": 4173.2925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4170.78,
              "high": 4178.78,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-03T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-03T16:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4172.503, planned_rr=3.0, touch=2026-07-03T16:50:00Z, outcome=tp_first",
      "entry": 4172.503,
      "stop": 4170.005,
      "target": 4179.999,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-03T16:50:00Z",
      "outcome_time": "2026-07-05T22:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-03T16-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-03",
        "timestamp": "2026-07-03T16:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4170.005,
          "impulse_high": 4176.58,
          "fib_entry_level": "62%",
          "entry": 4172.5035,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4170.78,
              "high": 4178.78,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-05T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-05T23:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4192.584, planned_rr=3.0, touch=2026-07-05T23:25:00Z, outcome=sl_first",
      "entry": 4192.584,
      "stop": 4186.675,
      "target": 4210.311,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-05T23:25:00Z",
      "outcome_time": "2026-07-05T23:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-05T23-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-05",
        "timestamp": "2026-07-05T23:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4186.675,
          "impulse_high": 4202.225,
          "fib_entry_level": "62%",
          "entry": 4192.584,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4191.665,
              "high": 4193.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4195.51,
            "PDL": 4121.47,
            "PWH": 4195.51,
            "PWL": 3942.1
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4179.221, planned_rr=3.0, touch=2026-07-06T00:35:00Z, outcome=sl_first",
      "entry": 4179.221,
      "stop": 4174.14,
      "target": 4194.462,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T00:35:00Z",
      "outcome_time": "2026-07-06T01:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4174.14,
          "impulse_high": 4187.51,
          "fib_entry_level": "62%",
          "entry": 4179.220600000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4180.363, planned_rr=3.0, touch=2026-07-06T01:05:00Z, outcome=sl_first",
      "entry": 4180.363,
      "stop": 4172.795,
      "target": 4203.066,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T01:05:00Z",
      "outcome_time": "2026-07-06T02:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T01-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4172.795,
          "impulse_high": 4192.71,
          "fib_entry_level": "62%",
          "entry": 4180.3627,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4192.568, planned_rr=3.0, touch=2026-07-06T01:35:00Z, outcome=sl_first",
      "entry": 4192.568,
      "stop": 4187.605,
      "target": 4207.456,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T01:35:00Z",
      "outcome_time": "2026-07-06T01:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4187.605,
          "impulse_high": 4200.665,
          "fib_entry_level": "62%",
          "entry": 4192.5678,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4191.665,
              "high": 4193.475,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4157.885, planned_rr=2.0, touch=2026-07-06T07:35:00Z, outcome=sl_first",
      "entry": 4157.885,
      "stop": 4151.29,
      "target": 4171.075,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T07:35:00Z",
      "outcome_time": "2026-07-06T08:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4151.29,
          "impulse_high": 4164.48,
          "fib_entry_level": "50%",
          "entry": 4157.885,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4155.865,
              "high": 4162.265,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4156.302, planned_rr=3.0, touch=2026-07-06T07:35:00Z, outcome=sl_first",
      "entry": 4156.302,
      "stop": 4151.29,
      "target": 4171.339,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T07:35:00Z",
      "outcome_time": "2026-07-06T08:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4151.29,
          "impulse_high": 4164.48,
          "fib_entry_level": "62%",
          "entry": 4156.3022,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4155.865,
              "high": 4162.265,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PDL', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4136.967, planned_rr=3.0, touch=2026-07-06T12:50:00Z, outcome=tp_first",
      "entry": 4136.967,
      "stop": 4133.37,
      "target": 4147.757,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-06T12:50:00Z",
      "outcome_time": "2026-07-06T13:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T12-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4133.37,
          "impulse_high": 4142.835,
          "fib_entry_level": "62%",
          "entry": 4136.9667,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4145.271, planned_rr=3.0, touch=2026-07-06T13:35:00Z, outcome=sl_first",
      "entry": 4145.271,
      "stop": 4141.99,
      "target": 4155.115,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T13:35:00Z",
      "outcome_time": "2026-07-06T13:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4141.99,
          "impulse_high": 4150.625,
          "fib_entry_level": "62%",
          "entry": 4145.271299999999,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-06T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-06T15:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4143.387, planned_rr=3.0, touch=2026-07-06T15:20:00Z, outcome=sl_first",
      "entry": 4143.387,
      "stop": 4138.675,
      "target": 4157.523,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-06T15:20:00Z",
      "outcome_time": "2026-07-06T15:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-06T15-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-06",
        "timestamp": "2026-07-06T15:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4138.675,
          "impulse_high": 4151.075,
          "fib_entry_level": "62%",
          "entry": 4143.387,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4202.705,
            "PDL": 4128.51,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4155.418, planned_rr=3.0, touch=2026-07-07T00:35:00Z, outcome=sl_first",
      "entry": 4155.418,
      "stop": 4152.125,
      "target": 4165.296,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T00:35:00Z",
      "outcome_time": "2026-07-07T00:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T00-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4152.125,
          "impulse_high": 4160.79,
          "fib_entry_level": "62%",
          "entry": 4155.4177,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T00-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-07T00:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4159.85, planned_rr=2.0, touch=2026-07-07T00:20:00Z, outcome=sl_first",
      "entry": 4159.85,
      "stop": 4152.125,
      "target": 4175.3,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T00:20:00Z",
      "outcome_time": "2026-07-07T00:35:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T00-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4152.125,
          "entry": 4159.85,
          "stop": 4152.125,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4136.213, planned_rr=3.0, touch=2026-07-07T02:45:00Z, outcome=sl_first",
      "entry": 4136.213,
      "stop": 4132.4,
      "target": 4147.653,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T02:45:00Z",
      "outcome_time": "2026-07-07T02:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4132.4,
          "impulse_high": 4142.435,
          "fib_entry_level": "62%",
          "entry": 4136.2133,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4123.982, planned_rr=3.0, touch=2026-07-07T05:20:00Z, outcome=sl_first",
      "entry": 4123.982,
      "stop": 4121.035,
      "target": 4132.823,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T05:20:00Z",
      "outcome_time": "2026-07-07T05:20:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T05-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4121.035,
          "impulse_high": 4128.79,
          "fib_entry_level": "62%",
          "entry": 4123.9819,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4128.74, planned_rr=2.0, touch=2026-07-07T06:35:00Z, outcome=sl_first",
      "entry": 4128.74,
      "stop": 4124.955,
      "target": 4136.31,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T06:35:00Z",
      "outcome_time": "2026-07-07T07:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4124.955,
          "impulse_high": 4132.525,
          "fib_entry_level": "50%",
          "entry": 4128.74,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T06:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4127.832, planned_rr=3.0, touch=2026-07-07T06:35:00Z, outcome=sl_first",
      "entry": 4127.832,
      "stop": 4124.955,
      "target": 4136.461,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T06:35:00Z",
      "outcome_time": "2026-07-07T07:00:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T06-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T06:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4124.955,
          "impulse_high": 4132.525,
          "fib_entry_level": "62%",
          "entry": 4127.8315999999995,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4131.965, planned_rr=2.0, touch=2026-07-07T08:10:00Z, outcome=sl_first",
      "entry": 4131.965,
      "stop": 4124.535,
      "target": 4146.825,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T08:10:00Z",
      "outcome_time": "2026-07-07T08:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4124.535,
          "impulse_high": 4139.395,
          "fib_entry_level": "50%",
          "entry": 4131.965,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4130.182, planned_rr=3.0, touch=2026-07-07T08:05:00Z, outcome=sl_first",
      "entry": 4130.182,
      "stop": 4124.535,
      "target": 4147.122,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T08:05:00Z",
      "outcome_time": "2026-07-07T08:50:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T08-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4124.535,
          "impulse_high": 4139.395,
          "fib_entry_level": "62%",
          "entry": 4130.1818,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4127.77, planned_rr=2.0, touch=2026-07-07T09:35:00Z, outcome=tp_first",
      "entry": 4127.77,
      "stop": 4121.64,
      "target": 4140.03,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-07T09:35:00Z",
      "outcome_time": "2026-07-07T11:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4121.64,
          "impulse_high": 4133.9,
          "fib_entry_level": "50%",
          "entry": 4127.77,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T09:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4126.299, planned_rr=3.0, touch=2026-07-07T09:50:00Z, outcome=tp_first",
      "entry": 4126.299,
      "stop": 4121.64,
      "target": 4140.275,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-07T09:50:00Z",
      "outcome_time": "2026-07-07T11:15:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T09-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T09:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4121.64,
          "impulse_high": 4133.9,
          "fib_entry_level": "62%",
          "entry": 4126.2988000000005,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4124.64,
              "high": 4133.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4152.745, planned_rr=2.0, touch=2026-07-07T11:50:00Z, outcome=tp_first",
      "entry": 4152.745,
      "stop": 4147.13,
      "target": 4163.975,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-07T11:50:00Z",
      "outcome_time": "2026-07-07T12:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4147.13,
          "impulse_high": 4158.36,
          "fib_entry_level": "50%",
          "entry": 4152.745,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4148.98,
              "high": 4154.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4151.397, planned_rr=3.0, touch=2026-07-07T11:50:00Z, outcome=tp_first",
      "entry": 4151.397,
      "stop": 4147.13,
      "target": 4164.2,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-07T11:50:00Z",
      "outcome_time": "2026-07-07T12:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T11-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4147.13,
          "impulse_high": 4158.36,
          "fib_entry_level": "62%",
          "entry": 4151.3974,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4148.98,
              "high": 4154.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4162.263, planned_rr=3.0, touch=2026-07-07T12:05:00Z, outcome=sl_first",
      "entry": 4162.263,
      "stop": 4154.625,
      "target": 4185.177,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T12:05:00Z",
      "outcome_time": "2026-07-07T14:00:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4154.625,
          "impulse_high": 4174.725,
          "fib_entry_level": "62%",
          "entry": 4162.263,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4158.36,
              "high": 4163.065,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4170.067, planned_rr=3.0, touch=2026-07-07T13:35:00Z, outcome=sl_first",
      "entry": 4170.067,
      "stop": 4163.66,
      "target": 4189.287,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T13:35:00Z",
      "outcome_time": "2026-07-07T13:55:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4163.66,
          "impulse_high": 4180.52,
          "fib_entry_level": "62%",
          "entry": 4170.0668000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-07T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-07T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4100.678, planned_rr=3.0, touch=2026-07-07T23:35:00Z, outcome=sl_first",
      "entry": 4100.678,
      "stop": 4096.185,
      "target": 4114.159,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-07T23:35:00Z",
      "outcome_time": "2026-07-07T23:45:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-07T23-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-07",
        "timestamp": "2026-07-07T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4096.185,
          "impulse_high": 4108.01,
          "fib_entry_level": "62%",
          "entry": 4100.6785,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4180.52,
            "PDL": 4092.295,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4112.613, planned_rr=3.0, touch=2026-07-08T00:35:00Z, outcome=sl_first",
      "entry": 4112.613,
      "stop": 4103.905,
      "target": 4138.736,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-08T00:35:00Z",
      "outcome_time": "2026-07-08T01:05:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4103.905,
          "impulse_high": 4126.82,
          "fib_entry_level": "62%",
          "entry": 4112.6127,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4106.498, planned_rr=3.0, touch=2026-07-08T01:50:00Z, outcome=tp_first",
      "entry": 4106.498,
      "stop": 4102.47,
      "target": 4118.582,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-08T01:50:00Z",
      "outcome_time": "2026-07-08T02:20:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4102.47,
          "impulse_high": 4113.07,
          "fib_entry_level": "62%",
          "entry": 4106.498,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4122.69, planned_rr=2.0, touch=2026-07-08T03:05:00Z, outcome=sl_first",
      "entry": 4122.69,
      "stop": 4114.56,
      "target": 4138.95,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-08T03:05:00Z",
      "outcome_time": "2026-07-08T08:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4114.56,
          "impulse_high": 4130.82,
          "fib_entry_level": "50%",
          "entry": 4122.6900000000005,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4120.865,
              "high": 4124.635,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4120.739, planned_rr=3.0, touch=2026-07-08T04:15:00Z, outcome=sl_first",
      "entry": 4120.739,
      "stop": 4114.56,
      "target": 4139.275,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-08T04:15:00Z",
      "outcome_time": "2026-07-08T08:15:00Z",
      "htf_context": "external_to_internal; bias=bullish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T03-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4114.56,
          "impulse_high": 4130.82,
          "fib_entry_level": "62%",
          "entry": 4120.7388,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4113.42,
              "high": 4120.865,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bullish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T07:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4122.06, planned_rr=3.0, touch=2026-07-08T07:30:00Z, outcome=sl_first",
      "entry": 4122.06,
      "stop": 4125.425,
      "target": 4111.965,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-08T07:30:00Z",
      "outcome_time": "2026-07-08T07:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T07-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T07:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4116.57,
          "impulse_high": 4125.425,
          "fib_entry_level": "62%",
          "entry": 4122.0601,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4121.375,
              "high": 4123.54,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4121.662, planned_rr=3.0, touch=2026-07-08T07:35:00Z, outcome=sl_first",
      "entry": 4121.662,
      "stop": 4118.225,
      "target": 4131.973,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-08T07:35:00Z",
      "outcome_time": "2026-07-08T07:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T07-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4118.225,
          "impulse_high": 4127.27,
          "fib_entry_level": "62%",
          "entry": 4121.6621000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4053.81, planned_rr=2.0, touch=2026-07-08T11:40:00Z, outcome=tp_first",
      "entry": 4053.81,
      "stop": 4041.55,
      "target": 4078.33,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-08T11:40:00Z",
      "outcome_time": "2026-07-08T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4041.55,
          "impulse_high": 4066.07,
          "fib_entry_level": "50%",
          "entry": 4053.8100000000004,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4047.825,
              "high": 4054.65,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T12-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-08T12:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "needs_more_context",
      "outcome": "Review",
      "reason": "Liquidity Sweep Reversal Short entry=4072.125, planned_rr=2.0, touch=2026-07-08T12:10:00Z, outcome=ambiguous_same_bar",
      "entry": 4072.125,
      "stop": 4073.72,
      "target": 4068.935,
      "planned_rr": 2.0,
      "r": null,
      "entry_touch_time": "2026-07-08T12:10:00Z",
      "outcome_time": "2026-07-08T12:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T12-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4073.72,
          "entry": 4072.125,
          "stop": 4073.72,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T14:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4064.283, planned_rr=2.0, touch=2026-07-08T14:05:00Z, outcome=tp_first",
      "entry": 4064.283,
      "stop": 4071.585,
      "target": 4049.678,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-08T14:05:00Z",
      "outcome_time": "2026-07-08T14:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T14-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T14:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4056.98,
          "impulse_high": 4071.585,
          "fib_entry_level": "50%",
          "entry": 4064.2825000000003,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4051.645,
              "high": 4065.545,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4048.405, planned_rr=2.0, touch=2026-07-08T14:35:00Z, outcome=tp_first",
      "entry": 4048.405,
      "stop": 4061.415,
      "target": 4022.385,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-08T14:35:00Z",
      "outcome_time": "2026-07-08T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4035.395,
          "impulse_high": 4061.415,
          "fib_entry_level": "50%",
          "entry": 4048.4049999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4046.44,
              "high": 4051.645,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4051.527, planned_rr=3.0, touch=2026-07-08T14:35:00Z, outcome=tp_first",
      "entry": 4051.527,
      "stop": 4061.415,
      "target": 4021.865,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-08T14:35:00Z",
      "outcome_time": "2026-07-08T15:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4035.395,
          "impulse_high": 4061.415,
          "fib_entry_level": "62%",
          "entry": 4051.5274,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4046.44,
              "high": 4051.645,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4069.635, planned_rr=2.0, touch=2026-07-08T18:05:00Z, outcome=tp_first",
      "entry": 4069.635,
      "stop": 4063.5,
      "target": 4081.905,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-08T18:05:00Z",
      "outcome_time": "2026-07-08T18:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4063.5,
          "impulse_high": 4075.77,
          "fib_entry_level": "50%",
          "entry": 4069.635,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4067.565,
              "high": 4075.335,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-08T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-08T18:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4068.163, planned_rr=3.0, touch=2026-07-08T18:05:00Z, outcome=tp_first",
      "entry": 4068.163,
      "stop": 4063.5,
      "target": 4082.15,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-08T18:05:00Z",
      "outcome_time": "2026-07-08T18:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-08T18-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-08",
        "timestamp": "2026-07-08T18:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4063.5,
          "impulse_high": 4075.77,
          "fib_entry_level": "62%",
          "entry": 4068.1626,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4067.565,
              "high": 4075.335,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4133.99,
            "PDL": 4021.815,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4080.559, planned_rr=3.0, touch=2026-07-09T00:05:00Z, outcome=sl_first",
      "entry": 4080.559,
      "stop": 4076.185,
      "target": 4093.68,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T00:05:00Z",
      "outcome_time": "2026-07-09T00:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T00-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4076.185,
          "impulse_high": 4087.695,
          "fib_entry_level": "62%",
          "entry": 4080.5588000000002,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T00-15-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-09T00:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4078.055, planned_rr=2.0, touch=2026-07-09T00:20:00Z, outcome=sl_first",
      "entry": 4078.055,
      "stop": 4090.02,
      "target": 4054.125,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T00:20:00Z",
      "outcome_time": "2026-07-09T06:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T00-15-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4090.02,
          "entry": 4078.055,
          "stop": 4090.02,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4073.022, planned_rr=3.0, touch=2026-07-09T01:20:00Z, outcome=sl_first",
      "entry": 4073.022,
      "stop": 4076.845,
      "target": 4061.554,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T01:20:00Z",
      "outcome_time": "2026-07-09T02:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4066.785,
          "impulse_high": 4076.845,
          "fib_entry_level": "62%",
          "entry": 4073.0222,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4072.035,
              "high": 4077.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4067.366, planned_rr=3.0, touch=2026-07-09T02:50:00Z, outcome=sl_first",
      "entry": 4067.366,
      "stop": 4062.475,
      "target": 4082.037,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T02:50:00Z",
      "outcome_time": "2026-07-09T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T01-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4062.475,
          "impulse_high": 4075.345,
          "fib_entry_level": "62%",
          "entry": 4067.3656,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T01-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-09T01:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4073.695, planned_rr=2.0, touch=2026-07-09T01:35:00Z, outcome=sl_first",
      "entry": 4073.695,
      "stop": 4062.475,
      "target": 4096.135,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T01:35:00Z",
      "outcome_time": "2026-07-09T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T01-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4062.475,
          "entry": 4073.695,
          "stop": 4062.475,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4075.181, planned_rr=3.0, touch=2026-07-09T02:05:00Z, outcome=sl_first",
      "entry": 4075.181,
      "stop": 4072.38,
      "target": 4083.582,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T02:05:00Z",
      "outcome_time": "2026-07-09T02:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4072.38,
          "impulse_high": 4079.75,
          "fib_entry_level": "62%",
          "entry": 4075.1806,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4075.94, planned_rr=2.0, touch=2026-07-09T05:10:00Z, outcome=sl_first",
      "entry": 4075.94,
      "stop": 4081.715,
      "target": 4064.39,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T05:10:00Z",
      "outcome_time": "2026-07-09T05:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4070.165,
          "impulse_high": 4081.715,
          "fib_entry_level": "50%",
          "entry": 4075.94,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4072.035,
              "high": 4077.005,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4068.28, planned_rr=2.0, touch=2026-07-09T02:50:00Z, outcome=tp_first",
      "entry": 4068.28,
      "stop": 4072.035,
      "target": 4060.77,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-09T02:50:00Z",
      "outcome_time": "2026-07-09T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4064.525,
          "impulse_high": 4072.035,
          "fib_entry_level": "50%",
          "entry": 4068.2799999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4067.8,
              "high": 4070.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4069.181, planned_rr=3.0, touch=2026-07-09T02:50:00Z, outcome=tp_first",
      "entry": 4069.181,
      "stop": 4072.035,
      "target": 4060.62,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-09T02:50:00Z",
      "outcome_time": "2026-07-09T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4064.525,
          "impulse_high": 4072.035,
          "fib_entry_level": "62%",
          "entry": 4069.1812,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4067.8,
              "high": 4070.165,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4061.588, planned_rr=2.0, touch=2026-07-09T03:05:00Z, outcome=sl_first",
      "entry": 4061.588,
      "stop": 4067.8,
      "target": 4049.162,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T03:05:00Z",
      "outcome_time": "2026-07-09T05:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4055.375,
          "impulse_high": 4067.8,
          "fib_entry_level": "50%",
          "entry": 4061.5875,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4061.39,
              "high": 4064.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4063.079, planned_rr=3.0, touch=2026-07-09T03:05:00Z, outcome=sl_first",
      "entry": 4063.079,
      "stop": 4067.8,
      "target": 4048.914,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T03:05:00Z",
      "outcome_time": "2026-07-09T05:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4055.375,
          "impulse_high": 4067.8,
          "fib_entry_level": "62%",
          "entry": 4063.0785,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4061.39,
              "high": 4064.525,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4068.459, planned_rr=3.0, touch=2026-07-09T05:05:00Z, outcome=tp_first",
      "entry": 4068.459,
      "stop": 4063.85,
      "target": 4082.288,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-09T05:05:00Z",
      "outcome_time": "2026-07-09T05:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T05-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4063.85,
          "impulse_high": 4075.98,
          "fib_entry_level": "62%",
          "entry": 4068.4593999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4111.703, planned_rr=3.0, touch=2026-07-09T08:20:00Z, outcome=sl_first",
      "entry": 4111.703,
      "stop": 4107.84,
      "target": 4123.291,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T08:20:00Z",
      "outcome_time": "2026-07-09T09:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4107.84,
          "impulse_high": 4118.005,
          "fib_entry_level": "62%",
          "entry": 4111.7027,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T11:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4100.68, planned_rr=3.0, touch=2026-07-09T11:05:00Z, outcome=tp_first",
      "entry": 4100.68,
      "stop": 4097.915,
      "target": 4108.973,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-09T11:05:00Z",
      "outcome_time": "2026-07-09T11:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T11-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T11:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4097.915,
          "impulse_high": 4105.19,
          "fib_entry_level": "62%",
          "entry": 4100.6795,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4110.383, planned_rr=3.0, touch=2026-07-09T12:30:00Z, outcome=sl_first",
      "entry": 4110.383,
      "stop": 4113.545,
      "target": 4100.899,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T12:30:00Z",
      "outcome_time": "2026-07-09T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4105.225,
          "impulse_high": 4113.545,
          "fib_entry_level": "62%",
          "entry": 4110.383400000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4114.938, planned_rr=2.0, touch=2026-07-09T12:35:00Z, outcome=sl_first",
      "entry": 4114.938,
      "stop": 4107.245,
      "target": 4130.323,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T12:35:00Z",
      "outcome_time": "2026-07-09T13:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4107.245,
          "impulse_high": 4122.63,
          "fib_entry_level": "50%",
          "entry": 4114.9375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4114.7,
              "high": 4118.72,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4113.091, planned_rr=3.0, touch=2026-07-09T12:40:00Z, outcome=sl_first",
      "entry": 4113.091,
      "stop": 4107.245,
      "target": 4130.63,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T12:40:00Z",
      "outcome_time": "2026-07-09T13:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T12-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4107.245,
          "impulse_high": 4122.63,
          "fib_entry_level": "62%",
          "entry": 4113.0913,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T12-30-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-09T12:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4113.23, planned_rr=2.0, touch=2026-07-09T12:40:00Z, outcome=sl_first",
      "entry": 4113.23,
      "stop": 4122.63,
      "target": 4094.43,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T12:40:00Z",
      "outcome_time": "2026-07-09T12:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T12-30-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4122.63,
          "entry": 4113.23,
          "stop": 4122.63,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4111.949, planned_rr=3.0, touch=2026-07-09T12:50:00Z, outcome=sl_first",
      "entry": 4111.949,
      "stop": 4114.7,
      "target": 4103.695,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T12:50:00Z",
      "outcome_time": "2026-07-09T12:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4107.46,
          "impulse_high": 4114.7,
          "fib_entry_level": "62%",
          "entry": 4111.9488,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T17-15-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-09T17:15:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Long entry=4129.188, planned_rr=2.0, touch=2026-07-09T17:25:00Z, outcome=tp_first",
      "entry": 4129.188,
      "stop": 4125.095,
      "target": 4137.372,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-09T17:25:00Z",
      "outcome_time": "2026-07-09T17:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T17-15-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4125.095,
          "entry": 4129.1875,
          "stop": 4125.095,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4128.995,
              "high": 4129.38,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T17-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-09T17:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4131.715, planned_rr=2.0, touch=2026-07-09T17:25:00Z, outcome=sl_first",
      "entry": 4131.715,
      "stop": 4125.095,
      "target": 4144.955,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-09T17:25:00Z",
      "outcome_time": "2026-07-09T18:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T17-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T17:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4125.095,
          "entry": 4131.715,
          "stop": 4125.095,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4126.035, planned_rr=2.0, touch=2026-07-09T18:20:00Z, outcome=tp_first",
      "entry": 4126.035,
      "stop": 4128.88,
      "target": 4120.345,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-09T18:20:00Z",
      "outcome_time": "2026-07-09T19:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4123.19,
          "impulse_high": 4128.88,
          "fib_entry_level": "50%",
          "entry": 4126.035,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4125.49,
              "high": 4127.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-09T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-09T18:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4126.718, planned_rr=3.0, touch=2026-07-09T18:20:00Z, outcome=tp_first",
      "entry": 4126.718,
      "stop": 4128.88,
      "target": 4120.231,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-09T18:20:00Z",
      "outcome_time": "2026-07-09T19:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-09T18-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-09",
        "timestamp": "2026-07-09T18:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4123.19,
          "impulse_high": 4128.88,
          "fib_entry_level": "62%",
          "entry": 4126.7178,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4125.49,
              "high": 4127.495,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4138.06,
            "PDL": 4054.4,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4121.278, planned_rr=3.0, touch=2026-07-10T00:20:00Z, outcome=sl_first",
      "entry": 4121.278,
      "stop": 4123.78,
      "target": 4113.771,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T00:20:00Z",
      "outcome_time": "2026-07-10T00:40:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4117.195,
          "impulse_high": 4123.78,
          "fib_entry_level": "62%",
          "entry": 4121.2777,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4118.176, planned_rr=3.0, touch=2026-07-10T00:35:00Z, outcome=tp_first",
      "entry": 4118.176,
      "stop": 4114.545,
      "target": 4129.069,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T00:35:00Z",
      "outcome_time": "2026-07-10T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4114.545,
          "impulse_high": 4124.1,
          "fib_entry_level": "62%",
          "entry": 4118.1759,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T00-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-10T00:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4122.985, planned_rr=2.0, touch=2026-07-10T00:40:00Z, outcome=sl_first",
      "entry": 4122.985,
      "stop": 4114.545,
      "target": 4139.865,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T00:40:00Z",
      "outcome_time": "2026-07-10T01:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T00-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4114.545,
          "entry": 4122.985000000001,
          "stop": 4114.545,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4122.79,
              "high": 4123.18,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 4121.47,
              "high": 4121.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T00-30-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-10T00:30:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4123.235, planned_rr=2.0, touch=2026-07-10T00:40:00Z, outcome=sl_first",
      "entry": 4123.235,
      "stop": 4114.545,
      "target": 4140.615,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T00:40:00Z",
      "outcome_time": "2026-07-10T01:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T00-30-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4114.545,
          "entry": 4123.235,
          "stop": 4114.545,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T00:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4124.114, planned_rr=3.0, touch=2026-07-10T00:50:00Z, outcome=sl_first",
      "entry": 4124.114,
      "stop": 4121.445,
      "target": 4132.123,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T00:50:00Z",
      "outcome_time": "2026-07-10T00:50:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T00-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4121.445,
          "impulse_high": 4128.47,
          "fib_entry_level": "62%",
          "entry": 4124.1145,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4124.883, planned_rr=3.0, touch=2026-07-10T01:20:00Z, outcome=tp_first",
      "entry": 4124.883,
      "stop": 4127.64,
      "target": 4116.612,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T01:20:00Z",
      "outcome_time": "2026-07-10T01:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4120.385,
          "impulse_high": 4127.64,
          "fib_entry_level": "62%",
          "entry": 4124.8831,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T01:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4118.102, planned_rr=3.0, touch=2026-07-10T01:35:00Z, outcome=sl_first",
      "entry": 4118.102,
      "stop": 4123.635,
      "target": 4101.504,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T01:35:00Z",
      "outcome_time": "2026-07-10T02:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T01-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T01:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4109.075,
          "impulse_high": 4123.635,
          "fib_entry_level": "62%",
          "entry": 4118.1022,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T01:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4113.565, planned_rr=3.0, touch=2026-07-10T01:50:00Z, outcome=tp_first",
      "entry": 4113.565,
      "stop": 4108.72,
      "target": 4128.1,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T01:50:00Z",
      "outcome_time": "2026-07-10T02:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T01-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4108.72,
          "impulse_high": 4121.47,
          "fib_entry_level": "62%",
          "entry": 4113.5650000000005,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T01-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-10T01:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4121.685, planned_rr=2.0, touch=2026-07-10T02:05:00Z, outcome=sl_first",
      "entry": 4121.685,
      "stop": 4108.72,
      "target": 4147.615,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T02:05:00Z",
      "outcome_time": "2026-07-10T05:45:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T01-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 4108.72,
          "entry": 4121.6849999999995,
          "stop": 4108.72,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4121.47,
              "high": 4121.9,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T01-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-10T01:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=4116.895, planned_rr=2.0, touch=2026-07-10T01:50:00Z, outcome=tp_first",
      "entry": 4116.895,
      "stop": 4108.72,
      "target": 4133.245,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-10T01:50:00Z",
      "outcome_time": "2026-07-10T03:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T01-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T01:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4108.72,
          "entry": 4116.895,
          "stop": 4108.72,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4121.012, planned_rr=3.0, touch=2026-07-10T02:05:00Z, outcome=sl_first",
      "entry": 4121.012,
      "stop": 4116.12,
      "target": 4135.69,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T02:05:00Z",
      "outcome_time": "2026-07-10T04:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4116.12,
          "impulse_high": 4128.995,
          "fib_entry_level": "62%",
          "entry": 4121.0125,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4110.05, planned_rr=2.0, touch=2026-07-10T07:40:00Z, outcome=tp_first",
      "entry": 4110.05,
      "stop": 4114.675,
      "target": 4100.8,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-10T07:40:00Z",
      "outcome_time": "2026-07-10T08:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4105.425,
          "impulse_high": 4114.675,
          "fib_entry_level": "50%",
          "entry": 4110.05,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4108.8,
              "high": 4115.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T07:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4111.16, planned_rr=3.0, touch=2026-07-10T07:35:00Z, outcome=tp_first",
      "entry": 4111.16,
      "stop": 4114.675,
      "target": 4100.615,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T07:35:00Z",
      "outcome_time": "2026-07-10T08:35:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T07-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T07:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4105.425,
          "impulse_high": 4114.675,
          "fib_entry_level": "62%",
          "entry": 4111.16,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4108.8,
              "high": 4115.52,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4106.873, planned_rr=3.0, touch=2026-07-10T08:20:00Z, outcome=sl_first",
      "entry": 4106.873,
      "stop": 4109.06,
      "target": 4100.312,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T08:20:00Z",
      "outcome_time": "2026-07-10T08:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T08-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4103.305,
          "impulse_high": 4109.06,
          "fib_entry_level": "62%",
          "entry": 4106.873100000001,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T08-15-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-10T08:15:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4104.47, planned_rr=2.0, touch=2026-07-10T08:25:00Z, outcome=sl_first",
      "entry": 4104.47,
      "stop": 4103.305,
      "target": 4106.8,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T08:25:00Z",
      "outcome_time": "2026-07-10T08:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T08-15-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 4103.305,
          "entry": 4104.47,
          "stop": 4103.305,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T08:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4099.222, planned_rr=3.0, touch=2026-07-10T09:00:00Z, outcome=sl_first",
      "entry": 4099.222,
      "stop": 4101.895,
      "target": 4091.202,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T09:00:00Z",
      "outcome_time": "2026-07-10T09:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T08-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T08:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4094.86,
          "impulse_high": 4101.895,
          "fib_entry_level": "62%",
          "entry": 4099.2217,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T10:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4108.797, planned_rr=3.0, touch=2026-07-10T10:20:00Z, outcome=sl_first",
      "entry": 4108.797,
      "stop": 4106.335,
      "target": 4116.185,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T10:20:00Z",
      "outcome_time": "2026-07-10T10:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T10-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T10:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4106.335,
          "impulse_high": 4112.815,
          "fib_entry_level": "62%",
          "entry": 4108.7973999999995,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4106.842, planned_rr=2.0, touch=2026-07-10T10:55:00Z, outcome=tp_first",
      "entry": 4106.842,
      "stop": 4109.195,
      "target": 4102.137,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-10T10:55:00Z",
      "outcome_time": "2026-07-10T11:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4104.49,
          "impulse_high": 4109.195,
          "fib_entry_level": "50%",
          "entry": 4106.8425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T10:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4107.407, planned_rr=3.0, touch=2026-07-10T10:50:00Z, outcome=tp_first",
      "entry": 4107.407,
      "stop": 4109.195,
      "target": 4102.043,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T10:50:00Z",
      "outcome_time": "2026-07-10T11:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T10-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T10:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4104.49,
          "impulse_high": 4109.195,
          "fib_entry_level": "62%",
          "entry": 4107.407099999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T11:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4105.159, planned_rr=3.0, touch=2026-07-10T11:25:00Z, outcome=sl_first",
      "entry": 4105.159,
      "stop": 4108.205,
      "target": 4096.022,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T11:25:00Z",
      "outcome_time": "2026-07-10T11:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T11-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T11:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4100.19,
          "impulse_high": 4108.205,
          "fib_entry_level": "62%",
          "entry": 4105.159299999999,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T11:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4100.51, planned_rr=3.0, touch=2026-07-10T11:40:00Z, outcome=tp_first",
      "entry": 4100.51,
      "stop": 4096.155,
      "target": 4113.574,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T11:40:00Z",
      "outcome_time": "2026-07-10T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T11-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4096.155,
          "impulse_high": 4107.615,
          "fib_entry_level": "62%",
          "entry": 4100.5098,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T11-30-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-10T11:30:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4105.12, planned_rr=2.0, touch=2026-07-10T11:40:00Z, outcome=sl_first",
      "entry": 4105.12,
      "stop": 4096.155,
      "target": 4123.05,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T11:40:00Z",
      "outcome_time": "2026-07-10T13:25:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T11-30-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T11:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_internal_to_external"
        ],
        "levels": {
          "sweep_low": 4096.155,
          "entry": 4105.12,
          "stop": 4096.155,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4102.195,
              "high": 4108.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4105.12, planned_rr=2.0, touch=2026-07-10T11:55:00Z, outcome=sl_first",
      "entry": 4105.12,
      "stop": 4108.045,
      "target": 4099.27,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T11:55:00Z",
      "outcome_time": "2026-07-10T12:10:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4102.195,
          "impulse_high": 4108.045,
          "fib_entry_level": "50%",
          "entry": 4105.12,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4098.865,
              "high": 4106.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4105.822, planned_rr=3.0, touch=2026-07-10T11:50:00Z, outcome=sl_first",
      "entry": 4105.822,
      "stop": 4108.045,
      "target": 4099.153,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T11:50:00Z",
      "outcome_time": "2026-07-10T11:50:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4102.195,
          "impulse_high": 4108.045,
          "fib_entry_level": "62%",
          "entry": 4105.822,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4098.865,
              "high": 4106.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T12:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4107.37, planned_rr=3.0, touch=2026-07-10T12:10:00Z, outcome=sl_first",
      "entry": 4107.37,
      "stop": 4101.11,
      "target": 4126.152,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T12:10:00Z",
      "outcome_time": "2026-07-10T12:35:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T12-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4101.11,
          "impulse_high": 4117.585,
          "fib_entry_level": "62%",
          "entry": 4107.3705,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4102.195,
              "high": 4108.045,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T12-00-00Z_short_breaker_continuation",
      "timestamp": "2026-07-10T12:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Breaker Continuation Short entry=4106.342, planned_rr=2.0, touch=2026-07-10T12:10:00Z, outcome=sl_first",
      "entry": 4106.342,
      "stop": 4117.585,
      "target": 4083.857,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T12:10:00Z",
      "outcome_time": "2026-07-10T12:10:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T12-00-00Z_short_breaker_continuation",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4117.585,
          "entry": 4106.3425,
          "stop": 4117.585,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4104.485,
              "high": 4108.2,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4098.865,
              "high": 4106.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4102.372, planned_rr=2.0, touch=2026-07-10T12:35:00Z, outcome=tp_first",
      "entry": 4102.372,
      "stop": 4107.115,
      "target": 4092.887,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-10T12:35:00Z",
      "outcome_time": "2026-07-10T13:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4097.63,
          "impulse_high": 4107.115,
          "fib_entry_level": "50%",
          "entry": 4102.3724999999995,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4098.865,
              "high": 4106.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T12:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4103.511, planned_rr=3.0, touch=2026-07-10T12:50:00Z, outcome=tp_first",
      "entry": 4103.511,
      "stop": 4107.115,
      "target": 4092.698,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-10T12:50:00Z",
      "outcome_time": "2026-07-10T13:25:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T12-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T12:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4097.63,
          "impulse_high": 4107.115,
          "fib_entry_level": "62%",
          "entry": 4103.5107,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4098.865,
              "high": 4106.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T13:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4098.819, planned_rr=3.0, touch=2026-07-10T13:20:00Z, outcome=sl_first",
      "entry": 4098.819,
      "stop": 4106.765,
      "target": 4074.982,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T13:20:00Z",
      "outcome_time": "2026-07-10T14:20:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T13-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T13:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4085.855,
          "impulse_high": 4106.765,
          "fib_entry_level": "62%",
          "entry": 4098.8192,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-10T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4093.065, planned_rr=3.0, touch=2026-07-10T13:35:00Z, outcome=sl_first",
      "entry": 4093.065,
      "stop": 4087.185,
      "target": 4110.707,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-10T13:35:00Z",
      "outcome_time": "2026-07-10T14:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-10T13-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4087.185,
          "impulse_high": 4102.66,
          "fib_entry_level": "62%",
          "entry": 4093.0654999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T20-00-00Z_short_breaker_continuation",
      "timestamp": "2026-07-10T20:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4102.045,
      "stop": 4115.19,
      "target": 4075.755,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-07-10T20-00-00Z_short_breaker_continuation",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T20:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4115.19,
          "entry": 4102.045,
          "stop": 4115.19,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4101.83,
              "high": 4102.26,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4088.2,
              "high": 4111.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-10T20-45-00Z_short_breaker_continuation",
      "timestamp": "2026-07-10T20:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "decision": "shadow",
      "reason": "valid context candidate but entry not touched in forward M5 window",
      "entry": 4102.045,
      "stop": 4121.375,
      "target": 4063.385,
      "planned_rr": 2.0,
      "r": null,
      "candidate": {
        "id": "candidate_v3_2026-07-10T20-45-00Z_short_breaker_continuation",
        "date": "2026-07-10",
        "timestamp": "2026-07-10T20:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4121.375,
          "entry": 4102.045,
          "stop": 4121.375,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4101.83,
              "high": 4102.26,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4088.2,
              "high": 4111.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=range; refs=['PDH']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-12T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-12T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4087.78, planned_rr=2.0, touch=2026-07-12T22:05:00Z, outcome=sl_first",
      "entry": 4087.78,
      "stop": 4094.82,
      "target": 4073.7,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-12T22:05:00Z",
      "outcome_time": "2026-07-12T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-12T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-12",
        "timestamp": "2026-07-12T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4080.74,
          "impulse_high": 4094.82,
          "fib_entry_level": "50%",
          "entry": 4087.7799999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4079.975,
              "high": 4088.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-12T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-12T22:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4089.47, planned_rr=3.0, touch=2026-07-12T22:05:00Z, outcome=sl_first",
      "entry": 4089.47,
      "stop": 4094.82,
      "target": 4073.418,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-12T22:05:00Z",
      "outcome_time": "2026-07-12T22:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-12T22-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-12",
        "timestamp": "2026-07-12T22:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4080.74,
          "impulse_high": 4094.82,
          "fib_entry_level": "62%",
          "entry": 4089.4696,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4088.2,
              "high": 4111.695,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-12T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-12T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4082.427, planned_rr=2.0, touch=2026-07-12T22:35:00Z, outcome=tp_first",
      "entry": 4082.427,
      "stop": 4086.755,
      "target": 4073.772,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-12T22:35:00Z",
      "outcome_time": "2026-07-12T22:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-12T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-12",
        "timestamp": "2026-07-12T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4078.1,
          "impulse_high": 4086.755,
          "fib_entry_level": "50%",
          "entry": 4082.4275,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4079.975,
              "high": 4088.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-12T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-12T22:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4083.466, planned_rr=3.0, touch=2026-07-12T22:35:00Z, outcome=tp_first",
      "entry": 4083.466,
      "stop": 4086.755,
      "target": 4073.599,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-12T22:35:00Z",
      "outcome_time": "2026-07-12T22:45:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-12T22-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-12",
        "timestamp": "2026-07-12T22:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4078.1,
          "impulse_high": 4086.755,
          "fib_entry_level": "62%",
          "entry": 4083.4661,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4079.975,
              "high": 4088.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-12T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-12T23:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4073.706, planned_rr=3.0, touch=2026-07-12T23:25:00Z, outcome=sl_first",
      "entry": 4073.706,
      "stop": 4076.83,
      "target": 4064.336,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-12T23:25:00Z",
      "outcome_time": "2026-07-12T23:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-12T23-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-12",
        "timestamp": "2026-07-12T23:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4068.61,
          "impulse_high": 4076.83,
          "fib_entry_level": "62%",
          "entry": 4073.7064,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4134.92,
            "PDL": 4072.8,
            "PWH": 4202.705,
            "PWL": 4021.815
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4081.318, planned_rr=2.0, touch=2026-07-13T00:20:00Z, outcome=tp_first",
      "entry": 4081.318,
      "stop": 4088.11,
      "target": 4067.733,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-13T00:20:00Z",
      "outcome_time": "2026-07-13T00:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4074.525,
          "impulse_high": 4088.11,
          "fib_entry_level": "50%",
          "entry": 4081.3175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4079.975,
              "high": 4088.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T00:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4082.948, planned_rr=3.0, touch=2026-07-13T00:20:00Z, outcome=tp_first",
      "entry": 4082.948,
      "stop": 4088.11,
      "target": 4067.461,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-13T00:20:00Z",
      "outcome_time": "2026-07-13T00:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T00-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4074.525,
          "impulse_high": 4088.11,
          "fib_entry_level": "62%",
          "entry": 4082.9477,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4079.975,
              "high": 4088.2,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T03:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4063.361, planned_rr=3.0, touch=2026-07-13T03:05:00Z, outcome=sl_first",
      "entry": 4063.361,
      "stop": 4069.545,
      "target": 4044.807,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T03:05:00Z",
      "outcome_time": "2026-07-13T05:05:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T03-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T03:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4053.27,
          "impulse_high": 4069.545,
          "fib_entry_level": "62%",
          "entry": 4063.3605000000002,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4062.58,
              "high": 4068.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4063.743, planned_rr=2.0, touch=2026-07-13T05:20:00Z, outcome=tp_first",
      "entry": 4063.743,
      "stop": 4069.83,
      "target": 4051.568,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-13T05:20:00Z",
      "outcome_time": "2026-07-13T06:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4057.655,
          "impulse_high": 4069.83,
          "fib_entry_level": "50%",
          "entry": 4063.7425000000003,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4062.58,
              "high": 4068.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T05:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4065.204, planned_rr=3.0, touch=2026-07-13T05:20:00Z, outcome=tp_first",
      "entry": 4065.204,
      "stop": 4069.83,
      "target": 4051.324,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-13T05:20:00Z",
      "outcome_time": "2026-07-13T06:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T05-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T05:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4057.655,
          "impulse_high": 4069.83,
          "fib_entry_level": "62%",
          "entry": 4065.2035,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4062.58,
              "high": 4068.42,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T05:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4059.976, planned_rr=3.0, touch=2026-07-13T05:50:00Z, outcome=sl_first",
      "entry": 4059.976,
      "stop": 4064.365,
      "target": 4046.809,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T05:50:00Z",
      "outcome_time": "2026-07-13T05:50:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T05-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T05:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4052.815,
          "impulse_high": 4064.365,
          "fib_entry_level": "62%",
          "entry": 4059.9759999999997,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T10:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4060.014, planned_rr=3.0, touch=2026-07-13T10:40:00Z, outcome=sl_first",
      "entry": 4060.014,
      "stop": 4068.34,
      "target": 4035.037,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T10:40:00Z",
      "outcome_time": "2026-07-13T11:35:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T10-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T10:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4046.43,
          "impulse_high": 4068.34,
          "fib_entry_level": "62%",
          "entry": 4060.0142,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PWH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PWH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T11:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4061.822, planned_rr=3.0, touch=2026-07-13T11:50:00Z, outcome=sl_first",
      "entry": 4061.822,
      "stop": 4065.955,
      "target": 4049.425,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T11:50:00Z",
      "outcome_time": "2026-07-13T12:45:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T11-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T11:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4055.08,
          "impulse_high": 4065.955,
          "fib_entry_level": "62%",
          "entry": 4061.8224999999998,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4061.72,
              "high": 4064.48,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4060.525,
              "high": 4062.255,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T14:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4020.158, planned_rr=2.0, touch=2026-07-13T14:20:00Z, outcome=tp_first",
      "entry": 4020.158,
      "stop": 4037.44,
      "target": 3985.593,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-13T14:20:00Z",
      "outcome_time": "2026-07-14T00:05:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T14-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T14:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4002.875,
          "impulse_high": 4037.44,
          "fib_entry_level": "50%",
          "entry": 4020.1575000000003,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4017.2,
              "high": 4029.805,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4008.715, planned_rr=2.0, touch=2026-07-13T14:35:00Z, outcome=sl_first",
      "entry": 4008.715,
      "stop": 4017.2,
      "target": 3991.745,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T14:35:00Z",
      "outcome_time": "2026-07-13T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4000.23,
          "impulse_high": 4017.2,
          "fib_entry_level": "50%",
          "entry": 4008.715,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4004.95,
              "high": 4012.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T14:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4010.751, planned_rr=3.0, touch=2026-07-13T14:50:00Z, outcome=sl_first",
      "entry": 4010.751,
      "stop": 4017.2,
      "target": 3991.406,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T14:50:00Z",
      "outcome_time": "2026-07-13T15:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T14-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T14:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4000.23,
          "impulse_high": 4017.2,
          "fib_entry_level": "62%",
          "entry": 4010.7514,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4004.95,
              "high": 4012.665,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWH",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWH', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=3997.523, planned_rr=2.0, touch=2026-07-13T23:50:00Z, outcome=sl_first",
      "entry": 3997.523,
      "stop": 3992.855,
      "target": 4006.858,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T23:50:00Z",
      "outcome_time": "2026-07-14T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3992.855,
          "impulse_high": 4002.19,
          "fib_entry_level": "50%",
          "entry": 3997.5225,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 3997.24,
              "high": 4000.565,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-13T23:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=3996.402, planned_rr=3.0, touch=2026-07-13T23:50:00Z, outcome=sl_first",
      "entry": 3996.402,
      "stop": 3992.855,
      "target": 4007.044,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T23:50:00Z",
      "outcome_time": "2026-07-14T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T23-45-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3992.855,
          "impulse_high": 4002.19,
          "fib_entry_level": "62%",
          "entry": 3996.4023,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T23-45-00Z_long_ict_sweep_mss_fvg",
      "timestamp": "2026-07-13T23:45:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Long entry=4003.242, planned_rr=2.0, touch=2026-07-14T00:00:00Z, outcome=sl_first",
      "entry": 4003.242,
      "stop": 3992.855,
      "target": 4024.017,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T00:00:00Z",
      "outcome_time": "2026-07-14T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T23-45-00Z_long_ict_sweep_mss_fvg",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_low": 3992.855,
          "entry": 4003.2425,
          "stop": 3992.855,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4002.39,
              "high": 4004.095,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 3997.24,
              "high": 4000.565,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-13T23-45-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-13T23:45:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Other",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Long entry=4001.26, planned_rr=2.0, touch=2026-07-13T23:55:00Z, outcome=sl_first",
      "entry": 4001.26,
      "stop": 3992.855,
      "target": 4018.07,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-13T23:55:00Z",
      "outcome_time": "2026-07-14T00:05:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-13T23-45-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-13",
        "timestamp": "2026-07-13T23:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Other",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 3992.855,
          "entry": 4001.26,
          "stop": 3992.855,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4094.82,
            "PDL": 3986.58,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T00:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3996.804, planned_rr=3.0, touch=2026-07-14T00:10:00Z, outcome=sl_first",
      "entry": 3996.804,
      "stop": 4004.93,
      "target": 3972.425,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T00:10:00Z",
      "outcome_time": "2026-07-14T00:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T00-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3983.545,
          "impulse_high": 4004.93,
          "fib_entry_level": "62%",
          "entry": 3996.8037,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T00-00-00Z_long_breaker_continuation",
      "timestamp": "2026-07-14T00:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Long entry=4003.242, planned_rr=2.0, touch=2026-07-14T00:30:00Z, outcome=tp_first",
      "entry": 4003.242,
      "stop": 3983.545,
      "target": 4042.637,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-14T00:30:00Z",
      "outcome_time": "2026-07-14T12:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed sellside raid and bullish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T00-00-00Z_long_breaker_continuation",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_low": 3983.545,
          "entry": 4003.2425,
          "stop": 3983.545,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4002.39,
              "high": 4004.095,
              "strength": 2
            },
            {
              "type": "bullish_fvg",
              "low": 3997.24,
              "high": 4000.565,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed sellside raid and bullish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T00-00-00Z_long_liquidity_sweep_reversal",
      "timestamp": "2026-07-14T00:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Long entry=3995.715, planned_rr=2.0, touch=2026-07-14T00:10:00Z, outcome=tp_first",
      "entry": 3995.715,
      "stop": 3983.545,
      "target": 4020.055,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-14T00:10:00Z",
      "outcome_time": "2026-07-14T04:30:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T00-00-00Z_long_liquidity_sweep_reversal",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T00:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "sellside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_low": 3983.545,
          "entry": 3995.715,
          "stop": 3983.545,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T00:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=3999.159, planned_rr=3.0, touch=2026-07-14T01:00:00Z, outcome=sl_first",
      "entry": 3999.159,
      "stop": 3994.265,
      "target": 4013.843,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T01:00:00Z",
      "outcome_time": "2026-07-14T01:00:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T00-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T00:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3994.265,
          "impulse_high": 4007.145,
          "fib_entry_level": "62%",
          "entry": 3999.1594,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 3997.24,
              "high": 4000.565,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3998.345, planned_rr=2.0, touch=2026-07-14T01:05:00Z, outcome=sl_first",
      "entry": 3998.345,
      "stop": 4004.59,
      "target": 3985.855,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T01:05:00Z",
      "outcome_time": "2026-07-14T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3992.1,
          "impulse_high": 4004.59,
          "fib_entry_level": "50%",
          "entry": 3998.3450000000003,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3997.54,
              "high": 3999.625,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T01:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3999.844, planned_rr=3.0, touch=2026-07-14T01:05:00Z, outcome=sl_first",
      "entry": 3999.844,
      "stop": 4004.59,
      "target": 3985.605,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T01:05:00Z",
      "outcome_time": "2026-07-14T01:15:00Z",
      "htf_context": "external_to_internal; bias=range; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T01-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T01:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3992.1,
          "impulse_high": 4004.59,
          "fib_entry_level": "62%",
          "entry": 3999.8438,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=range; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4010.668, planned_rr=3.0, touch=2026-07-14T02:05:00Z, outcome=tp_first",
      "entry": 4010.668,
      "stop": 4006.15,
      "target": 4024.223,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-14T02:05:00Z",
      "outcome_time": "2026-07-14T05:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T02-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4006.15,
          "impulse_high": 4018.04,
          "fib_entry_level": "62%",
          "entry": 4010.6682,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4015.934, planned_rr=3.0, touch=2026-07-14T02:40:00Z, outcome=sl_first",
      "entry": 4015.934,
      "stop": 4019.135,
      "target": 4006.329,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T02:40:00Z",
      "outcome_time": "2026-07-14T03:30:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4010.71,
          "impulse_high": 4019.135,
          "fib_entry_level": "62%",
          "entry": 4015.9335,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4028.358, planned_rr=2.0, touch=2026-07-14T05:35:00Z, outcome=sl_first",
      "entry": 4028.358,
      "stop": 4022.465,
      "target": 4040.142,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T05:35:00Z",
      "outcome_time": "2026-07-14T06:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4022.465,
          "impulse_high": 4034.25,
          "fib_entry_level": "50%",
          "entry": 4028.3575,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4024.12,
              "high": 4029.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T05:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4026.943, planned_rr=3.0, touch=2026-07-14T06:20:00Z, outcome=sl_first",
      "entry": 4026.943,
      "stop": 4022.465,
      "target": 4040.378,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T06:20:00Z",
      "outcome_time": "2026-07-14T06:40:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T05-30-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T05:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4022.465,
          "impulse_high": 4034.25,
          "fib_entry_level": "62%",
          "entry": 4026.9433,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bullish_fvg",
              "low": 4024.12,
              "high": 4029.085,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4027.168, planned_rr=2.0, touch=2026-07-14T06:20:00Z, outcome=tp_first",
      "entry": 4027.168,
      "stop": 4031.34,
      "target": 4018.822,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-14T06:20:00Z",
      "outcome_time": "2026-07-14T08:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4022.995,
          "impulse_high": 4031.34,
          "fib_entry_level": "50%",
          "entry": 4027.1675,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4026.46,
              "high": 4028.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T06:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4028.169, planned_rr=3.0, touch=2026-07-14T06:20:00Z, outcome=tp_first",
      "entry": 4028.169,
      "stop": 4031.34,
      "target": 4018.656,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-14T06:20:00Z",
      "outcome_time": "2026-07-14T08:00:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T06-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T06:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4022.995,
          "impulse_high": 4031.34,
          "fib_entry_level": "62%",
          "entry": 4028.1689,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4026.46,
              "high": 4028.75,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4020.315, planned_rr=2.0, touch=2026-07-14T08:20:00Z, outcome=sl_first",
      "entry": 4020.315,
      "stop": 4017.345,
      "target": 4026.255,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T08:20:00Z",
      "outcome_time": "2026-07-14T08:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4017.345,
          "impulse_high": 4023.285,
          "fib_entry_level": "50%",
          "entry": 4020.3149999999996,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bullish_ob",
              "low": 4020.2,
              "high": 4024.12,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T08:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4019.602, planned_rr=3.0, touch=2026-07-14T08:20:00Z, outcome=sl_first",
      "entry": 4019.602,
      "stop": 4017.345,
      "target": 4026.374,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T08:20:00Z",
      "outcome_time": "2026-07-14T08:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T08-15-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T08:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4017.345,
          "impulse_high": 4023.285,
          "fib_entry_level": "62%",
          "entry": 4019.6022,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T09:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Long",
      "session": "London",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Long entry=4017.981, planned_rr=3.0, touch=2026-07-14T09:20:00Z, outcome=tp_first",
      "entry": 4017.981,
      "stop": 4013.925,
      "target": 4030.151,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-14T09:20:00Z",
      "outcome_time": "2026-07-14T11:35:00Z",
      "htf_context": "internal_to_external; bias=bullish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T09-00-00Z_long_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T09:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Long",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4013.925,
          "impulse_high": 4024.6,
          "fib_entry_level": "62%",
          "entry": 4017.9815,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bullish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bullish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-14T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-14T18:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY PM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4053.298, planned_rr=3.0, touch=2026-07-14T18:35:00Z, outcome=sl_first",
      "entry": 4053.298,
      "stop": 4059.68,
      "target": 4034.152,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-14T18:35:00Z",
      "outcome_time": "2026-07-15T00:55:00Z",
      "htf_context": "internal_to_external; bias=range; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-14T18-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-14",
        "timestamp": "2026-07-14T18:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY PM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4042.885,
          "impulse_high": 4059.68,
          "fib_entry_level": "62%",
          "entry": 4053.2979,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "range",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4104.05,
            "PDL": 3983.545,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=range; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T00-15-00Z_short_breaker_continuation",
      "timestamp": "2026-07-15T00:15:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4047.757, planned_rr=2.0, touch=2026-07-15T01:30:00Z, outcome=tp_first",
      "entry": 4047.757,
      "stop": 4058.315,
      "target": 4026.642,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-15T01:30:00Z",
      "outcome_time": "2026-07-15T05:10:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T00-15-00Z_short_breaker_continuation",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T00:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4058.315,
          "entry": 4047.7574999999997,
          "stop": 4058.315,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4042.74,
              "high": 4052.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T00-45-00Z_short_breaker_continuation",
      "timestamp": "2026-07-15T00:45:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4047.757, planned_rr=2.0, touch=2026-07-15T01:30:00Z, outcome=tp_first",
      "entry": 4047.757,
      "stop": 4060.845,
      "target": 4021.582,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-15T01:30:00Z",
      "outcome_time": "2026-07-15T06:20:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T00-45-00Z_short_breaker_continuation",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T00:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4060.845,
          "entry": 4047.7574999999997,
          "stop": 4060.845,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4042.74,
              "high": 4052.775,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T02:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4039.193, planned_rr=3.0, touch=2026-07-15T02:50:00Z, outcome=tp_first",
      "entry": 4039.193,
      "stop": 4041.965,
      "target": 4030.877,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-15T02:50:00Z",
      "outcome_time": "2026-07-15T03:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T02-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T02:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4034.67,
          "impulse_high": 4041.965,
          "fib_entry_level": "62%",
          "entry": 4039.1929,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4030.693, planned_rr=2.0, touch=2026-07-15T05:05:00Z, outcome=sl_first",
      "entry": 4030.693,
      "stop": 4036.28,
      "target": 4019.517,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T05:05:00Z",
      "outcome_time": "2026-07-15T05:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4025.105,
          "impulse_high": 4036.28,
          "fib_entry_level": "50%",
          "entry": 4030.6925,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4030.4,
              "high": 4034.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T05:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4032.034, planned_rr=3.0, touch=2026-07-15T05:05:00Z, outcome=sl_first",
      "entry": 4032.034,
      "stop": 4036.28,
      "target": 4019.294,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T05:05:00Z",
      "outcome_time": "2026-07-15T05:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T05-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4025.105,
          "impulse_high": 4036.28,
          "fib_entry_level": "62%",
          "entry": 4032.0335,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4030.4,
              "high": 4034.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T05-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-07-15T05:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "ICT Sweep + MSS + FVG Short entry=4029.573, planned_rr=2.0, touch=2026-07-15T05:05:00Z, outcome=sl_first",
      "entry": 4029.573,
      "stop": 4036.28,
      "target": 4016.158,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T05:05:00Z",
      "outcome_time": "2026-07-15T05:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T05-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4036.28,
          "entry": 4029.5725,
          "stop": 4036.28,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4028.745,
              "high": 4030.4,
              "strength": 2
            },
            {
              "type": "bearish_ob",
              "low": 4030.4,
              "high": 4034.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T05-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-15T05:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Liquidity Sweep Reversal Short entry=4026.365, planned_rr=2.0, touch=2026-07-15T05:10:00Z, outcome=sl_first",
      "entry": 4026.365,
      "stop": 4036.28,
      "target": 4006.535,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T05:10:00Z",
      "outcome_time": "2026-07-15T05:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T05-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T05:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4036.28,
          "entry": 4026.365,
          "stop": 4036.28,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4031.443, planned_rr=2.0, touch=2026-07-15T06:05:00Z, outcome=tp_first",
      "entry": 4031.443,
      "stop": 4035.63,
      "target": 4023.068,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-15T06:05:00Z",
      "outcome_time": "2026-07-15T06:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4027.255,
          "impulse_high": 4035.63,
          "fib_entry_level": "50%",
          "entry": 4031.4425,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4030.4,
              "high": 4034.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T06:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4032.448, planned_rr=3.0, touch=2026-07-15T06:40:00Z, outcome=tp_first",
      "entry": 4032.448,
      "stop": 4035.63,
      "target": 4022.9,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-15T06:40:00Z",
      "outcome_time": "2026-07-15T07:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T06-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T06:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4027.255,
          "impulse_high": 4035.63,
          "fib_entry_level": "62%",
          "entry": 4032.4475,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4030.4,
              "high": 4034.555,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4021.802, planned_rr=2.0, touch=2026-07-15T08:10:00Z, outcome=sl_first",
      "entry": 4021.802,
      "stop": 4026.13,
      "target": 4013.147,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T08:10:00Z",
      "outcome_time": "2026-07-15T08:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4017.475,
          "impulse_high": 4026.13,
          "fib_entry_level": "50%",
          "entry": 4021.8025,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4021.535,
              "high": 4026.92,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4022.841, planned_rr=3.0, touch=2026-07-15T08:05:00Z, outcome=sl_first",
      "entry": 4022.841,
      "stop": 4026.13,
      "target": 4012.974,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-15T08:05:00Z",
      "outcome_time": "2026-07-15T08:25:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4017.475,
          "impulse_high": 4026.13,
          "fib_entry_level": "62%",
          "entry": 4022.8411,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4021.535,
              "high": 4026.92,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4053.175, planned_rr=2.0, touch=2026-07-15T15:10:00Z, outcome=tp_first",
      "entry": 4053.175,
      "stop": 4063.01,
      "target": 4033.505,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-15T15:10:00Z",
      "outcome_time": "2026-07-15T16:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4043.34,
          "impulse_high": 4063.01,
          "fib_entry_level": "50%",
          "entry": 4053.175,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4049.87,
              "high": 4053.325,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T15:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4055.535, planned_rr=3.0, touch=2026-07-15T15:05:00Z, outcome=tp_first",
      "entry": 4055.535,
      "stop": 4063.01,
      "target": 4033.112,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-15T15:05:00Z",
      "outcome_time": "2026-07-15T16:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T15-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T15:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4043.34,
          "impulse_high": 4063.01,
          "fib_entry_level": "62%",
          "entry": 4055.5354,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4053.325,
              "high": 4061.06,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4042.713, planned_rr=2.0, touch=2026-07-15T16:05:00Z, outcome=tp_first",
      "entry": 4042.713,
      "stop": 4048.02,
      "target": 4032.098,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-15T16:05:00Z",
      "outcome_time": "2026-07-15T16:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4037.405,
          "impulse_high": 4048.02,
          "fib_entry_level": "50%",
          "entry": 4042.7125,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4040.87,
              "high": 4046.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-15T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-15T16:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4043.986, planned_rr=3.0, touch=2026-07-15T16:05:00Z, outcome=tp_first",
      "entry": 4043.986,
      "stop": 4048.02,
      "target": 4031.885,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-15T16:05:00Z",
      "outcome_time": "2026-07-15T16:30:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-15T16-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-15",
        "timestamp": "2026-07-15T16:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4037.405,
          "impulse_high": 4048.02,
          "fib_entry_level": "62%",
          "entry": 4043.9863,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4040.87,
              "high": 4046.49,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4081.52,
            "PDL": 4017.475,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T01:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4041.233, planned_rr=3.0, touch=2026-07-16T01:20:00Z, outcome=sl_first",
      "entry": 4041.233,
      "stop": 4045.62,
      "target": 4028.072,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-16T01:20:00Z",
      "outcome_time": "2026-07-16T01:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T01-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T01:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4034.075,
          "impulse_high": 4045.62,
          "fib_entry_level": "62%",
          "entry": 4041.2329,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4041.11,
              "high": 4050.735,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4035.8, planned_rr=2.0, touch=2026-07-16T02:05:00Z, outcome=tp_first",
      "entry": 4035.8,
      "stop": 4040.21,
      "target": 4026.98,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-16T02:05:00Z",
      "outcome_time": "2026-07-16T02:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4031.39,
          "impulse_high": 4040.21,
          "fib_entry_level": "50%",
          "entry": 4035.8,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4035.145,
              "high": 4037.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T02:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4036.858, planned_rr=3.0, touch=2026-07-16T02:05:00Z, outcome=tp_first",
      "entry": 4036.858,
      "stop": 4040.21,
      "target": 4026.804,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-16T02:05:00Z",
      "outcome_time": "2026-07-16T02:35:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T02-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T02:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4031.39,
          "impulse_high": 4040.21,
          "fib_entry_level": "62%",
          "entry": 4036.8584,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4035.145,
              "high": 4037.385,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4030.092, planned_rr=2.0, touch=2026-07-16T02:35:00Z, outcome=sl_first",
      "entry": 4030.092,
      "stop": 4035.915,
      "target": 4018.447,
      "planned_rr": 2.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-16T02:35:00Z",
      "outcome_time": "2026-07-16T03:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 4024.27,
          "impulse_high": 4035.915,
          "fib_entry_level": "50%",
          "entry": 4030.0924999999997,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4028.78,
              "high": 4035.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T02:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "Asia",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4031.49, planned_rr=3.0, touch=2026-07-16T02:35:00Z, outcome=sl_first",
      "entry": 4031.49,
      "stop": 4035.915,
      "target": 4018.215,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-16T02:35:00Z",
      "outcome_time": "2026-07-16T03:40:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T02-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T02:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "Asia",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4024.27,
          "impulse_high": 4035.915,
          "fib_entry_level": "62%",
          "entry": 4031.4899,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_ob",
              "low": 4028.78,
              "high": 4035.145,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T08:00:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "London",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4030.985, planned_rr=3.0, touch=2026-07-16T08:20:00Z, outcome=sl_first",
      "entry": 4030.985,
      "stop": 4034.31,
      "target": 4021.01,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-16T08:20:00Z",
      "outcome_time": "2026-07-16T08:30:00Z",
      "htf_context": "internal_to_external; bias=bearish; refs=['internal range']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T08-00-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T08:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "London",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "internal_to_external",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4025.56,
          "impulse_high": 4034.31,
          "fib_entry_level": "62%",
          "entry": 4030.985,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "internal_to_external",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [],
          "note": "internal_to_external; bias=bearish; refs=['internal range']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-00-00Z_short_breaker_continuation",
      "timestamp": "2026-07-16T12:00:00Z",
      "strategy": "Breaker Continuation",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Breaker Continuation Short entry=4035.217, planned_rr=2.0, touch=2026-07-16T12:05:00Z, outcome=tp_first",
      "entry": 4035.217,
      "stop": 4043.36,
      "target": 4018.932,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-16T12:05:00Z",
      "outcome_time": "2026-07-16T12:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Breaker continuation with failed buyside raid and bearish PD retest.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-00-00Z_short_breaker_continuation",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Breaker Continuation",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 70,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "break_opposite_structure",
          "breaker_pd_retest"
        ],
        "levels": {
          "sweep_high": 4043.36,
          "entry": 4035.2174999999997,
          "stop": 4043.36,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4035.165,
              "high": 4035.27,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4030.25,
              "high": 4031.54,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Breaker continuation with failed buyside raid and bearish PD retest.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-00-00Z_short_ict_sweep_mss_fvg",
      "timestamp": "2026-07-16T12:00:00Z",
      "strategy": "ICT Sweep + MSS + FVG",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "ICT Sweep + MSS + FVG Short entry=4035.217, planned_rr=2.0, touch=2026-07-16T12:05:00Z, outcome=tp_first",
      "entry": 4035.217,
      "stop": 4043.36,
      "target": 4018.932,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-16T12:05:00Z",
      "outcome_time": "2026-07-16T12:15:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-00-00Z_short_ict_sweep_mss_fvg",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "ICT Sweep + MSS + FVG",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 72,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "mss_proxy",
          "pd_array",
          "htf_external_to_internal"
        ],
        "levels": {
          "sweep_high": 4043.36,
          "entry": 4035.2174999999997,
          "stop": 4043.36,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 4035.165,
              "high": 4035.27,
              "strength": 2
            },
            {
              "type": "bearish_fvg",
              "low": 4030.25,
              "high": 4031.54,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "Sweep + MSS/FVG candidate with HTF narrative proxy.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-00-00Z_short_liquidity_sweep_reversal",
      "timestamp": "2026-07-16T12:00:00Z",
      "strategy": "Liquidity Sweep Reversal",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Liquidity Sweep Reversal Short entry=4031.89, planned_rr=2.0, touch=2026-07-16T12:10:00Z, outcome=tp_first",
      "entry": 4031.89,
      "stop": 4043.36,
      "target": 4008.95,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-16T12:10:00Z",
      "outcome_time": "2026-07-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-00-00Z_short_liquidity_sweep_reversal",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:00:00Z",
        "symbol": "XAUUSD",
        "strategy": "Liquidity Sweep Reversal",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 74,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "buyside_sweep",
          "external_level_context",
          "reversal_candidate"
        ],
        "levels": {
          "sweep_high": 4043.36,
          "entry": 4031.89,
          "stop": 4043.36,
          "planned_rr": 2.0
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "External liquidity sweep reversal candidate near PDL/PWL/PDH/PWH.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T12:15:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4024.971, planned_rr=3.0, touch=2026-07-16T12:20:00Z, outcome=tp_first",
      "entry": 4024.971,
      "stop": 4032.36,
      "target": 4002.804,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-16T12:20:00Z",
      "outcome_time": "2026-07-16T12:40:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-15-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:15:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 4012.915,
          "impulse_high": 4032.36,
          "fib_entry_level": "62%",
          "entry": 4024.9709000000003,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3999.783, planned_rr=2.0, touch=2026-07-16T12:50:00Z, outcome=tp_first",
      "entry": 3999.783,
      "stop": 4008.985,
      "target": 3981.378,
      "planned_rr": 2.0,
      "r": 2.0,
      "entry_touch_time": "2026-07-16T12:50:00Z",
      "outcome_time": "2026-07-16T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 82,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib50_strong_pd_array"
        ],
        "levels": {
          "impulse_low": 3990.58,
          "impulse_high": 4008.985,
          "fib_entry_level": "50%",
          "entry": 3999.7825000000003,
          "planned_rr": 2.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3997.055,
              "high": 4000.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "50% Fib entry allowed because strong PD Array overlaps 50% zone.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T12:45:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "confirmed",
      "outcome": "Win",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=4001.991, planned_rr=3.0, touch=2026-07-16T12:50:00Z, outcome=tp_first",
      "entry": 4001.991,
      "stop": 4008.985,
      "target": 3981.009,
      "planned_rr": 3.0,
      "r": 3.0,
      "entry_touch_time": "2026-07-16T12:50:00Z",
      "outcome_time": "2026-07-16T13:00:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T12-45-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T12:45:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3990.58,
          "impulse_high": 4008.985,
          "fib_entry_level": "62%",
          "entry": 4001.9911,
          "planned_rr": 3.0,
          "pd_arrays": []
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDH",
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDH', 'PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    },
    {
      "candidate_id": "candidate_v3_2026-07-16T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
      "timestamp": "2026-07-16T13:30:00Z",
      "strategy": "Aryy HTF Narrative Fib 50/62",
      "direction": "Short",
      "session": "NY AM",
      "decision": "shadow",
      "outcome": "Loss",
      "reason": "Aryy HTF Narrative Fib 50/62 Short entry=3998.388, planned_rr=3.0, touch=2026-07-16T14:25:00Z, outcome=sl_first",
      "entry": 3998.388,
      "stop": 4008.485,
      "target": 3968.099,
      "planned_rr": 3.0,
      "r": -1.0,
      "entry_touch_time": "2026-07-16T14:25:00Z",
      "outcome_time": "2026-07-16T15:20:00Z",
      "htf_context": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']",
      "m15_m5_execution": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
      "candidate": {
        "id": "candidate_v3_2026-07-16T13-30-00Z_short_aryy_htf_narrative_fib_50_62",
        "date": "2026-07-16",
        "timestamp": "2026-07-16T13:30:00Z",
        "symbol": "XAUUSD",
        "strategy": "Aryy HTF Narrative Fib 50/62",
        "direction": "Short",
        "session": "NY AM",
        "timeframe": "HTF narrative + M15/M5 entry",
        "entry_timeframe": "M15/M5",
        "candidate_score": 76,
        "status": "unreviewed",
        "requires_manual_replay": true,
        "scanner_flags": [
          "htf_narrative",
          "external_to_internal",
          "m15_displacement",
          "fib62_entry"
        ],
        "levels": {
          "impulse_low": 3981.915,
          "impulse_high": 4008.485,
          "fib_entry_level": "62%",
          "entry": 3998.3884000000003,
          "planned_rr": 3.0,
          "pd_arrays": [
            {
              "type": "bearish_fvg",
              "low": 3997.055,
              "high": 4000.655,
              "strength": 2
            }
          ]
        },
        "htf_narrative": {
          "bias": "bearish",
          "mode": "external_to_internal",
          "levels": {
            "PDH": 4064.71,
            "PDL": 3969.345,
            "PWH": 4104.05,
            "PWL": 3969.345
          },
          "external_refs": [
            "PDL",
            "PWL"
          ],
          "note": "external_to_internal; bias=bearish; refs=['PDL', 'PWL']"
        },
        "notes": "62% Fib entry with SL 100%, TP -53%; M15/M5 replay required.",
        "isFinalBacktest": false
      }
    }
  ]
}
