{
  "id": 2639,
  "rank": 4,
  "name": "APB Channel EA",
  "aka": [
    "APB Channel Expert",
    "Heikin-Ashi reversal with channel confirmation and swing-structure stops"
  ],
  "family": "A",
  "subtype": "A2",
  "one_liner": "A reversal EA using Heikin-Ashi bars and Keltner-style channels with swing-structure stops.",
  "market_regime": "any",
  "timeframes": [
    "M15"
  ],
  "symbols": [
    "XAUUSD"
  ],
  "sessions": [
    "TradeStartHour 7:00, TradeEndHour 21:00 GMT",
    "Avoids Friday close after 20:00 GMT"
  ],
  "indicators": [
    {
      "name": "Heikin-Ashi",
      "params": {
        "period": 60
      },
      "applied_to": "close"
    },
    {
      "name": "EMA",
      "params": {
        "period": 20
      },
      "applied_to": "close"
    },
    {
      "name": "ATR",
      "params": {
        "period": 20
      },
      "applied_to": "close"
    }
  ],
  "entry_long": [
    "Heikin-Ashi bar colour changes from bearish to bullish",
    "Price closes at or above the lower band of the Keltner channel"
  ],
  "entry_short": [
    "Heikin-Ashi bar colour changes from bullish to bearish",
    "Price closes at or below the upper band of the Keltner channel"
  ],
  "exit_rules": [
    "1.5R take profit",
    "Stop loss at the lowest low of the last SwingLookbackBars closed bars plus a buffer",
    "Break-even move to entry plus a small lock once price covers BreakEvenTriggerPct of the distance to target",
    "Close on an opposite-direction arrow"
  ],
  "filters": [
    "Time window — only trade between TradeStartHour and TradeEndHour (server time)",
    "Liquidity — the signal bar's tick volume must be at least MinVolumeRatio × the recent average",
    "Large-candle / volatility — if ATR exceeds MaxATRPips, entries are skipped"
  ],
  "stop_loss": "Beyond the lowest low (for buys) or highest high (for sells) of the last SwingLookbackBars closed bars, plus a configurable buffer",
  "take_profit": "RR_Ratio × the risk distance (1.5 by default)",
  "position_size": "Lot size is calculated from the distance between entry and stop, so the monetary risk stays constant regardless of how wide the structural stop happens to be",
  "evidence_type": "source_code",
  "completeness": 85.0,
  "signal_warnings": null,
  "claim_warnings": null,
  "opacity_warnings": null,
  "build_warnings": [
    "MT4_ONLY: the captured source is MQL4 / written for MetaTrader 4. It needs porting (order functions, indicator handles) before it runs on MT5."
  ],
  "canonical": "https://prismaticalgos.com/compendium/algo/2639-apb-channel-ea",
  "snapshot": "2026-10-31 15:46 UTC",
  "source_url": "https://www.mql5.com/en/code/77393",
  "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."
}
