// Generated by ProRealAlgos.com

// Touch & Turn Scalper – Opening Range Liquidity Reversal

// RECOMMENDED TIMEFRAME: 15-minute chart (strategy runs

on 15m only)

// Instrument example: Netflix (US stocks) – session 09:30–11:00

EST

// Entry logic based on first 15m candle of regular session

DEFPARAM CumulateOrders = False

DEFPARAM FlatBefore = 090000

DEFPARAM FlatAfter = 110000

// === USER PARAMETERS ===

riskPercentATR = 25 // % of daily ATR to qualify as liquidity

candle

rrRatio = 2 // Risk:Reward ratio (TP = 2x SL)

atrPeriod = 14

// === SESSION CONTROL (US STOCKS) ===

isNewSession = (Hour = 9 AND Minute = 30)

// === RESET VARIABLES EACH DAY ===

IF isNewSession THEN

 rangeHigh = 0

 rangeLow = 0

 rangeSize = 0

 fib38 = 0

 direction = 0

 validSetup = 0

ENDIF

// === CAPTURE FIRST 15m OPENING RANGE ===

IF Hour = 9 AND Minute = 45 THEN

 rangeHigh = High

 rangeLow = Low

 rangeSize = rangeHigh - rangeLow

 // --- DAILY ATR ---

 dailyATR = AverageTrueRange[atrPeriod](Close)

 // --- LIQUIDITY CANDLE FILTER ---

 IF rangeSize >= dailyATR * riskPercentATR / 100 THEN

 validSetup = 1

 ELSE

 validSetup = 0

 ENDIF

 // --- FIB 38.2 LEVEL ---

 fib38 = rangeLow + (rangeHigh - rangeLow) * 0.382

 // --- DIRECTION OF LIQUIDITY CANDLE ---

 IF Close < Open THEN

 direction = -1 // bearish candle → look for LONG

 ELSE

 direction = 1 // bullish candle → look for SHORT

 ENDIF

ENDIF

// === TRADE EXECUTION (Touch & Turn) ===

IF validSetup = 1 AND NOT OnMarket AND Hour >= 9 AND Hour <

11 THEN

 // === LONG SETUP ===

 IF direction = -1 THEN

 entryPrice = rangeLow

 targetDistance = fib38 - entryPrice

 stopDistance = targetDistance / rrRatio

 BUY 1 SHARE AT entryPrice LIMIT

 SET TARGET PRICE fib38

 SET STOP LOSS stopDistance

 ENDIF

 // === SHORT SETUP ===

 IF direction = 1 THEN

 entryPrice = rangeHigh

 targetDistance = entryPrice - fib38

 stopDistance = targetDistance / rrRatio

 SELLSHORT 1 SHARE AT entryPrice LIMIT

 SET TARGET PRICE fib38

 SET STOP LOSS stopDistance

 ENDIF

ENDIF

// === FORCE EXIT AFTER 11:00 ===

IF Hour >= 11 AND OnMarket THEN

 SELL AT MARKET

 EXITSHORT AT MARKET

ENDIF

// === BACKTEST STATISTICS DISPLAY ===

GRAPH StrategyProfit AS "Net Profit"

GRAPH PositionPerf(1) AS "Last Trade %"
