{
  "id": 146,
  "rank": 657,
  "name": "Structural_Validation",
  "aka": [
    "Swing Extremes and Pullbacks in MQL5 (Part 3)"
  ],
  "family": "E",
  "subtype": "E1",
  "one_liner": "Detects valid swing points and liquidity zones to generate trade signals based on market structure.",
  "market_regime": "any",
  "timeframes": [
    "M1"
  ],
  "symbols": [
    "_Symbol"
  ],
  "sessions": [],
  "indicators": [
    {
      "name": "ATR",
      "params": {
        "period": 14
      },
      "applied_to": "close"
    }
  ],
  "entry_long": [
    "valid higher low with bullish displacement and market state is EXPANSION or ACCUMULATION"
  ],
  "entry_short": [
    "valid lower high with bearish displacement and market state is DISTRIBUTION or REVERSAL"
  ],
  "exit_rules": [
    "not explicitly stated in the source"
  ],
  "filters": [
    "visualize on chart if enabled"
  ],
  "stop_loss": "nearest validated structure level",
  "take_profit": "based on predefined Risk:Reward ratio",
  "position_size": "not explicitly stated in the source",
  "evidence_type": "source_code",
  "completeness": 50.0,
  "signal_warnings": null,
  "claim_warnings": null,
  "opacity_warnings": null,
  "build_warnings": null,
  "canonical": "https://prismaticalgos.com/compendium/algo/146-structural-validation",
  "snapshot": "2026-10-31 15:46 UTC",
  "source_url": "https://www.mql5.com/en/articles/21888",
  "limitations": "These are machine-extracted research records, not verified trading systems. Catalog rank measures specification detail and claimed evidence, not profitability. The catalog extraction pipeline did not independently backtest these records. Its separate selected testing ledger does not validate the wider corpus. Rules, labels and parameters can be incomplete or wrong; consult the original source and its reuse terms."
}
