//@version=5 strategy("Enhanced Zones Strategy", overlay=true) zone_multiplier = input.float(0.10, "Zone Multiplier") atr_threshold = input.float(0.0015, "ATR Threshold") risk_percent = input.int(1, "Risk %") sl_multiplier = input.float(1.5, "SL Multiplier") tp_multiplier = input.float(4.2, "TP Multiplier") trailing_stop = input.int(10, "Trailing Stop (pips)") trailing_start = input.int(25, "Trailing Start (pips)") if (hour(time, "UTC") == 7 and minute(time, "UTC") == 0) { float high_prev = high[1] float low_prev = low[1] float zah = high_prev + (high_prev - low_prev) * zone_multiplier float zbl = low_prev - (high_prev - low_prev) * zone_multiplier float atr = ta.atr(14) float sl = atr * sl_multiplier / syminfo.mintick float tp = atr * tp_multiplier / syminfo.mintick float lots = (strategy.equity * risk_percent / 100) / (sl * syminfo.mintick * 10) // Placeholder for liquidity check bool liquidity_check = true if (strategy.position_size == 0 and atr >= atr_threshold and loss_streak < 2 and liquidity_check) { if (close >= zah and close - low[1] > 6 * syminfo.mintick and open < close) { strategy.entry("ZAH Buy", strategy.long, qty=lots) strategy.exit("ZAH Exit", "ZAH Buy", stop=close - sl * syminfo.mintick, profit=tp * syminfo.mintick) } if (close <= zbl and high[1] - close > 6 * syminfo.mintick and open > close) { strategy.entry("ZBL Sell", strategy.short, qty=lots) strategy.exit("ZBL Exit", "ZBL Sell", stop=close + sl * syminfo.mintick, profit=tp * syminfo.mintick) } } }